4.21

所花时间:4小时

代码量:0

博客篇:1

计算机网络总结

5.1.1 进程之间通信 概述:运输层向它上面的应用层提供通信服务运输层属于面向通信部分的最高层,同时也是用户功能中的最底层;只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发时只用到下三层的功能 通信:真正进行通信的实体是在主机中的进程,是一台主机中的进程和另一台主机中的进程在交换数据,严格来讲,两台主机进行通信就是两台主机中的应用进程互相通信

5.1.2 运输层的两个主要协议 两个主要协议: (1)用户数据报协议(UDP) (2)传输控制协议(TCP) UDP:在传送数据之前不需要先建立连接,远地主机收到UDP报文后,不需要给出确认,UDP不提供可靠交付,但某些情况却是最有效的工作方式 TCP:提供面向连接的服务,在传送数据前先建立连接,数据传送结束后要释放连接;TCP不提供广播或多播服务;TCP提供可靠的、面向连接的运输服务,因此增加了很多开销 UDP与IP数据报的区别: IP数据报要经过互联网中许多路由器的存储转发 UDP用户数据报是在运输层的端到端抽线的逻辑信道中传送的 TCP报文是在运输层抽象的端到端逻辑信道中传送,这种信道是可靠的全双工信道

5.1.3 运输层的端口 目的:把特定主机上运行的进程作为互联网上通信的终点不可行,因为进程的创建和撤销是动态的,因此使用协议端口号作为识别的终点,而不需要知道具体进程 协议端口号(端口):虽然通信的终点是应用进程,但只要把报文交到目的主机的某个目的端口,剩下的工作就由TCP或UDP来完成 两种端口区别: 硬件端口:不同硬件设备进行交互的接口 软件端口:应用层的各种协议进程与运输实体进行层间交互的一种地址,此处的端口都是指软件端口 端口的表示:用16位的端口号来标志一个端口;端口号只具有本地意义,只标志本计算机应用层中各进程和运输层交互时的层间接口

5.2.1 UDP概述 (1)UDP是无连接的:发生数据之前无需建立连接,减少了开销和发送数据之前的时延 (2)UDP使用尽最大可能交付:不保证可靠交付,因此主机不需要维持复杂的连接状态表 (3)UDP是面向报文的:UDP对应用层交下来的报文不做处理,直接加上首部后就转发,若报文过长,IP层会进行分片,可能使IP层效率降低 (4)UDP没有拥塞控制:因此网络出现拥塞不会使源主机发送速率降低,对实时应用很重要 (5)UDP支持一对一、一对多、多对一和多对多的交互通信 (6)UDP的首部开销小:只有8字节,比TCP的20字节首部短

5.3.1 TCP的主要特点 (1)TCP是面向链接的运输层协议:在使用TCP协议之前,必须先建立连接 (2)每一条TCP链接只能有两个端点,每一条TCP连接只能是点对点的 (3)TCP提供可靠交付的服务:保证数据无差错、不丢失、不重复、按序到达 (4)TCP提供全双工通信:允许通信双方任何时候都能发送数据 (5)面向字节流: 流指的是流入到进程或从进程流出的字节序列;TCP把应用程序交下来的数据仅看作一串无结构的字节流

5.3.2 TCP的连接 套接字:套接字=(IP地址:端口号) IP地址拼接上端口号,例如(192.168.1.1:80) 每一条TCP连接唯一被通信两个端点(两个套接字)所确定: TCP连接::={socket1,socket2} = {(IP1:port1),(IP2:port2)} TCP连接的端点不是进程,而是套接字 同一个IP地址可以由多个不同的TCP连接,而同一个端口也能出现在多个不同TCP连接中

posted @ 2024-04-21 18:16  umiQa  阅读(3)  评论(0编辑  收藏  举报