一、协议

  • 协议: 计算机网络通信必须遵守的规则。
    详情见:https://blog.csdn.net/qq_33591873/article/details/107937323

二、IP地址

  • IP地址:指互联网协议地址(Internet Protocol Address),俗称IP。IP地址用来给一个网络中的计算机设备做唯一的编号。假如我们把“个人电脑”比作“一台电话”的话,那么“IP地址”就相当于“电话号码”。

IP地址分类

  • IPv4:是一个32位的二进制数,通常被分为4个字节,表示成a.b.c.d 的形式,例如192.168.65.100 。其中a、b、c、d都是0~255之间的十进制整数,那么最多可以表示42亿个。

  • IPv6:由于互联网的蓬勃发展,IP地址的需求量愈来愈大,但是网络地址资源有限,使得IP的分配越发紧张。

    为了扩大地址空间,拟通过IPv6重新定义地址空间,采用128位地址长度,每16个字节一组,分成8组十六进制数,表示成ABCD:EF01:2345:6789:ABCD:EF01:2345:6789,号称可以为全世界的每一粒沙子编上一个网址,这样就解决了网络地址资源数量不够的问题。

常用命令

  • 查看本机IP地址,在控制台输入:
ipconfig
  • 检查网络是否连通,在控制台输入:
ping 空格 IP地址
ping 220.181.57.216

特殊的IP地址

  • 本机IP地址:127.0.0.1localhost

三、端口号

网络的通信,本质上是两个进程(应用程序)的通信。每台计算机都有很多的进程,那么在网络通信时,如何区分这些进程呢?

如果说IP地址可以唯一标识网络中的设备,那么端口号就可以唯一标识设备中的进程(应用程序)了。

  • 端口号:用两个字节表示的整数,它的取值范围是0~65535 。其中,0~1023之间的端口号用于一些知名的网络服务和应用,普通的应用程序需要使用1024以上的端口号。如果端口号被另外一个服务或应用所占用,会导致当前程序启动失败。

利用协议+IP地址+端口号 三元组合,就可以标识网络中的进程了,那么进程间的通信就可以利用这个标识与其它进程进行交互。

你不得不知的网络编程三剑客相关推荐

  1. iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载

    前言:iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载是在前篇iOS开发之网络编程--使用NSURLConnection实现大文件下载的基础上进行    断点续传的设置 ...

  2. 完毕port(CompletionPort)具体解释 - 手把手教你玩转网络编程系列之三

       手把手叫你玩转网络编程系列之三    完毕port(Completion Port)具体解释                                                    ...

  3. 网络编程学习方法和图书推荐

    从事网络编程有五年多了,写过自己的Server,读过大部分网络库libevent,redis, muduo等等,市面上的网络用书大多读过,给新人一些建议,主要是从事服务器网络编程后端的同学. 如果你没 ...

  4. python 网络编程 问题记录

    191223 python 网络编程 套接字的初使用 在本机配置服务端和客户端后,运行没问题:将服务端代码弄到另一台电脑上后启动,用原来的电脑去连接它,就连不上了,不知啥原因,是ip自动获取和指定ip ...

  5. (转载)网络编程释疑之:同步,异步,阻塞,非阻塞

    一讲到网络编程的I/O模型,总会涉及到这几个概念.问了很多人,没几个能清晰地讲出他们之间的区别联系,甚至在网络上也有很多不同的观点,也不知是中国文字释义的博大精深,还是本来这几个概念就是绕人不倦.今天 ...

  6. 网络编程释疑之:TCP的TIME_WAIT状态在服务器开发中的影响?

    在进行TCP高并发服务器开发时,有些规则仿佛是约定俗成的,很多朋友会依据这些规则去做,比如高并发TCP服务器中进行主动关闭的一方最好是客户端.服务器端程序最好启用SO_REUSEADDR选项,但是很多 ...

  7. 网络编程释疑之:同步,异步,阻塞,非阻塞

    一讲到网络编程的I/O模型,总会涉及到这几个概念.问了很多人,没几个能清晰地讲出他们之间的区别联系,甚至在网络上也有很多不同的观点,也不知是中国文字释义的博大精深,还是本来这几个概念就是绕人不倦.今天 ...

  8. Linux网络编程“惊群”问题总结

    http://www.cnblogs.com/Anker/p/7071849.html 1.前言 我从事Linux系统下网络开发将近4年了,经常还是遇到一些问题,只是知其然而不知其所以然,有时候和其他 ...

  9. ACE网络编程思考(二)

    2019独角兽企业重金招聘Python工程师标准>>> 3. ACE 代码质量不高,更像是一个研究项目,而不是工业界的产品 读 ACE 现在的代码,一股学生气扑面而来,感觉像在读实习 ...

  10. 完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三 1-转

    完成端口(Completion Port)详解 本系列里完成端口的代码在两年前就已经写好了,但是由于许久没有写东西了,不知该如何提笔,所以这篇文档总是在酝酿之中--酝酿了两年之后,终于决定开始动笔了, ...

最新文章

  1. 在IIS中配置MIME类型组建Wap网站
  2. windows10中远程访问凭据不工作
  3. 聊聊区块链,虽然我不挖矿!
  4. python 偏函数装饰器
  5. sqlServer 获取最新的一条数据
  6. intellij idea elixir 插件
  7. jQuery阻止表单提交
  8. Java 延时常见的几种方法
  9. java sql语句中文乱码_PL/SQL执行语句中文乱码
  10. STM32芯片包下载教程
  11. 看图和步骤教你把dwg转换成pdf格式
  12. ubuntu firefox flash 插件安装
  13. 网络安全——计算机网络拓扑图
  14. C++核心准则R.3: 原始指针(T*)不应拥有所有权
  15. Shinobi视频监控平台
  16. 解决问题:Matlab如何生成或保存无背景图片
  17. 单向和双向沟通带来启发
  18. Web设计网站软件推荐
  19. 实例1QQ好友列表界面和九宫格
  20. net::ERR_CONNECTION_TIMED_OUT 网络连接超时

热门文章

  1. 山东省第二届数据应用创新大赛日照赛区-公积金贷款逾期预测-赛后总结
  2. openwrt修改默认网关地址_非常详细的锐捷网关路由配置教程,适合新手小白
  3. 在PyG上构建自己的数据集
  4. 微信自研生产级 Paxos 类库 PhxPaxos 实现原理介绍
  5. 解决ImportError: cannot import name ‘bbox_overlaps_cython‘
  6. 打开WORD文档出错提示
  7. android 闪屏页 动画,记一次 Android 闪屏页适配
  8. python 0基础学习笔记6:OS模块、窗口控制、语言、内存修改
  9. mysql 索引选择原则 07
  10. CSO246未能找到类型或命名空间名“System“(是否缺少using指令或程序集引用?)