端口
标记正在计算机设备上运行的应用程序的,被规定为一个 16 位的二进制,范围是 0~65535 。
分类
周知端口: 0~1023 ,被预先定义的知名应用占用(如: HTTP 占用 80 , FTP 占用 21 )
注册端口 : 1024~49151 ,分配给用户进程或某些应用程序。
动态端口: 49152 到 65535 ,之所以称为动态端口,是因为它 一般不固定分配某种进程,而是动态分配。
通信协议
网络上通信的设备,事先规定的连接规则,以及传输数据的规则被称为网络通信协议。
开放式网络互联标准:OSI网络参考模型
OSI 网络参考模型:全球网络互联标准。
TCP/IP网络模型:事实上的国际标准。
OSI网络参考模型 | TCP/IP网络模型 | 各层对应 | 面向操作 |
应用层 | 应用层 | HTTP、FTP、SMTP… | 应用程序需要关注的:浏览器,邮箱。程序员一般在这一层开发 |
表示层 | |||
会话层 | |||
传输层 | 传输层 | UDP、TCP… | 选择使用的TCP , UDP协议 |
网络层 | 网络层 | IP… | 封装源和目标IP |
数据链路层 | 数据链路层+ 物理 | 比特流… | 物理设备中传输 |
物理层 |
传输层的2个通信协议
UDP(User Datagram Protocol) :用户数据报协议;
TCP(Transmission Control Protocol) :传输控制协议。
UDP协议
特点:无连接、不可靠通信。(通讯效率高)
不事先建立连接,数据按照包发,一包数据包含:自己的 IP 、程序端口,目的地 IP 、程序端口和数据(限制在 64KB 内)等。
发送方不管对方是否在线,数据在中间丢失也不管,如果接收方收到数据也不返回确认,故是不可靠的 。
TCP协议
特点:面向连接、可靠通信。(通讯效率相对不高)
TCP 的最终目的:要保证在不可靠的信道上实现可靠的传输。
TCP 主要有三个步骤实现可靠传输:(三次)建立连接,传输数据进行确认,(四次)断开连接。
(三次)建立连接
发出连接请求
返回一个响应
再次发出确认信息,连接建立
(四次)断开连接
发出断开连接请求
返回一个响应:稍等
返回一个响应:确认断开
发出正式确认断开连接