报文传输、QQ消息发送过程实例

比如你用QQ发送文本信息“你”好给对方。
发送过程:
1, QQ先把“你”好转换成ASCII码,并且生成一个报文,此时报文为:(QQ报文头)+(你好的ASCII码)
2, QQ是应用层软件,,理论上应用层应该把报文交给它的下一层,表示层。此时报文变为(表示层报文头)+ (QQ报文头)+(你好的ASCII码)
不过,我觉得QQ应该是直接把报文交给了传输层的UDP协议,此时报文变为(UDP报文头)+ (QQ报文头)+(你好的ASCII码)。此时还要建立UDP连接,不赘述。
3,然后UDP协议把报文交给网络层的IP协议,报文变为(IP报文头)+ (UDP报文头)+ (QQ报文头)+(你好的ASCII码)。
4,然后,IP协议把报文交给链路层协议的以太协议,报文变为(以太报文头)+ (IP报文头)+ (UDP报文头)+ (QQ报文头)+(你好的ASCII码)。
5,然后,以太报文被送到网卡上,此时报文被分割为好几个帧,以0101年的形式通过物理层发送到网络上。
6,然后,是交换机收到这些帧,把这些帧还原成以太报文,交换机根据以太报文头里的MAC地址查找自己的MAC地址表,找到出接口,把报文从出接口发送出去(把报文送到网关设备上)。发送的时候报文又被分割成多个帧,通过物理层发送出去。
7日网关收到报文后,根据IP报文头里的IP地址,查找自己的路由表和FIB表,找到下一跳地址,然后把报文送到下一跳,这个过程不断重复,直到找到对方的网关。
8日对方的网关再把这个报文发送到对方的电脑上。
9日对方电脑收到报文后依次剥掉以太报文头,IP报文头,UDP报文头,然后发现应用层协议是QQ,于是把这个报文交给QQ软件处理,QQ再把ASCII码还原成“你”好,显示在对话框里。
以上就是大概的过程了


报文传输、QQ消息发送过程实例