Linux---协议、地址、端口号的认识

对于tcp,udp的具体传输说明:

https://blog.csdn.net/Z_JUAN1/article/details/81362571

一、认识IP地址

     IP协议有两个版本,IPv4和IPv6,一般我们都用IPv4。(IPv4和IPv6不兼容)

     1)IP地址就是在IP协议中,用来标识网络中不用主机的地址。

     2)对于IPv4来说,IP地址是一个4字节的,32位无符号整数。

     3)我们通常使用“点分十进制”,比如:192.168.0.1  ,用点分割的每一个数字表示一个字节,范围0~255.

二、源IP地址和目的IP地址

     在IP数据包头部,有两个IP地址,分别为:源IP地址和目的IP地址

    那么光有IP地址就可以通信吗?  比如你想发送给对方消息到QQ上,却发到了微信上。所以我们还需要一个标识来区分,这个数据要给那个程序进行解析。

三、端口号

    端口号是传输层协议的内容

 1)端口号是一个2字节16位无符号整数(0~65535)

 2)端口号用来标识一个进程,告诉操作系统数据要交给哪个程序进行处理

 3)IP地址+端口号能够标识网络上的某一台主机的某一个进程。

 4)一个端口号只能被一个进程占用

那么为什么不用进程 pid 来表示呢?  是因为:一个进程退出之后再运行pid会发生变化。

 一个进程可以绑定多个端口号,但是一个端口号不能绑定多个进程。

四、TCP协议

     TCP协议(传输控制协议)

   1)传输层协议

   2)有连接  :先建立连接(类似打电话,要先接通,才能说话)

   3)可靠传输 :(面向连接是可靠的前提,肯定可以到达目的端)

   4)面向字节流:  (灵活接收,数据间无明确分割,发送两条可能会被当成一条,就像是从一端倒水,从另一端节水)

五、UDP协议

   UDP协议(用户数据协议)

 1) 传输层协议

 2)无连接  :  不建立连接(类似发短信,不管你能不能接收)

 3)不可靠: 无连接所以不可靠,不知道数据是否到达目的端(对方手机停机接收不到短信)

 4)面向数据报: 不可分开接收,是一个整体,一个与一个之间有分割(就像是冰块,但存在冰块太大,不能传输)

六、网络字节序

 就是数据存储的方式

TCP/TP协议规定:网络数据流应采用大端字节序,即低地址高字节

 

猜你喜欢

转载自blog.csdn.net/Z_JUAN1/article/details/81281606