以太网传输层的作用是将网络层传输过来的不可靠的数据服务转成可靠的数据服务,不出错,不重复,不丢失,不乱序,实现进程到进程的区分服务,应用进程可以在传输层提供的基础之上完成应用报文的报文交互。
传输层协议包括TCP(传输控制协议)和UDP(用户数据报协议)协议:
TCP是一种传输控制协议,是面向连接的,可靠的传输,有流量控制和拥塞控制;
典型应用:web浏览器、电子邮件、文件传输程序
TCP是一种一对一的通信,在通信前需要建立连接,也就是三次握手,在通信结束后也需要释放链接,四次挥手,最大可传输字节数为1460,协议类型为6;
TCP协议构成:
TCP通信过程-三次握手:
建立连接时,需要将SYN标志位置1,初始序号值为1300,发给ECU B;ECU B将SYN和ACK标志位置1,选择初始序号值为3500,确认号值为1300+1,发送给ECU a;ECU A收到信息,还要回一个确认,ACK置1,确认号为3500+1,自身序号为1300+1,这样TCP连接建立完成。
TCP通信过程-数据发送:
发送数据时,首先ACK报文段不携带数据,不消耗序号,所以,在发送数据时,序号值仍为1301,确认号为3501,携带的数据为10字节,发送给ECU B;ECU B收到信息,ACK置1,自身序号为3501,确认号为期望收到对方下一个报文段的第一个数据字节的序号,也就是1301+10,1311,携带数据为20字节;ECU A接收后,返回自身序号1311,也就是之前ECU B的确认号,确认号为3521,这样,就完成数据的通信过程。
TCP通信过程-四次挥手:
释放连接,首先ECU A发送释放报文,并停止发送数据,结束标志位置1,ACK置1,序号1311,确认好3521;ECU B回复,ACK,自身序号不变,确认号加1;当开始释放连接时,ECU A不会向ECU B发送数据,但B要发送数据,A仍要接收,直到B发送结束标志;也就是第9部,再次发送结束和确认标志,自身序号和确认号不变;ECU A返回ACK,自身序号和确认号加1。
UDP是用户数据报协议,是一种简单的,无连接的,低开销,尽力传递的协议;
常用应用:视频流,IP语音等
UDP相较于TCP传输效率更高,最大可传输字节数1472
协议类型为17;
UDP协议构成:源和目标端口,长度,校验和
UDP通信过程
通过这个通信过程我们可以看出,通信之前不需要定义通信连接,通信过程中不需要给任何形式应答。