网络基础之网络通讯三要素

一、IP地址

IP地址[主机名],英文全称:Internet Protocol Address,又译为网际协议地址。

网络中设备的标识,用来唯一标识每一台计算机。通常现在常用的IP地址是IPV4地址。

IPV4就是有4段数字,格式是xxx.xxx.xxx.xxx,每一段数字由8位二进制做成,取值范围是0~255。

IPV4采用32位地址长度,只有大约43亿个地址,IPv4定义的有限地址空间将被耗尽。

为了扩大地址空间,拟通过IPV6重新定义地址空间。IPv6采用128位地址长度,几乎可以不受限制地提供地址,但IPV6现在还没有正式普及。

为了解决IPV4有限地址空间的问题,IP地址又分内网地址和外网地址。(比如校园网,每一个学生都会有一个内网地址,学校会有一个路由器,路由器会有个外网地址,学生想要上外网都必须通过路由器出去,只要通过同一个路由器出去的,他们对应的外网地址都是一样的)

本质上所有的网络访问是通过ip地址访问的,域名是一个速记符号,不用记住IP地址复杂的数字。

本地回环地址:127.0.0.1 主机名:localhost

每台计算机都有一个127.0.0.1

如果127.0.0.1 ping不通,说明网卡不工作(比如装黑苹果,检测网卡驱动有没装好,可以 ping下回环地址)

如果本机地址 ping不通,说明网线坏了。

二、端口号

端口号用来标识进程的逻辑地址,不同进程的标识。

有效的端口:0~65535。

其中0~1024由系统使用或保留端口。

开发中不要使用1024以下的端口。

(端口有什么用呢?我们知道,一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?显然不能只靠IP地址,因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区 分不同的服务的。)

三、传输协议

UDP(用户数据报协议)

  1. 面向无连接的协议
  2. 只管发送,不确认对方是否接收到
  3. 将数据及源和目的封装成数据包中,不需要建立连接
  4. 每个数据报的大小限制在64K之内
  5. 因为无需连接,因此是不可靠协议
  6. 不需要建立连接,速度快

TCP(Transmission Control Protocol,传输控制协议)

  1. 面向连接的协议
  2. 建立连接,形成传输数据的通道
  3. 在连接中进行大数据传输(数据大小不收限制)
  4. 通过三次握手完成连接,是可靠协议,安全送达
  5. 必须建立连接,效率会稍低

三次握手的过程:

  • 主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话。
  • 主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话。
  • 主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。

三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B正式发送数据。

使用场合:

  • tcp一般用于文件传输(ftp http 对数据准确性要求高,速度可以相对慢),发送或接收邮件(pop imap smtp 对数据准确性要求高,非紧急应用),远程登录(telnet ssh 对数据准确性有一定要求,有连接的概念)等等。
  • UDP一般用于即时通信(qq聊天 对数据准确性和丢包要求比较低,但速度必须快),在线视频(rtsp 速度一定要快,保证视频连续,但是偶尔花了一个图像帧,人们还是能接受的),网络语音电话(VoIP 语音数据包一般比较小,需要高速发送,偶尔断音或串音也没有问题)等等。

网络通讯三要素归纳一句话:通过 ip 找机器,通过端口找程序,通过协议确定如何传输数据。

六阿哥

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: