zoukankan      html  css  js  c++  java
  • 网络信息的传输过程

    转自:https://zhidao.baidu.com/question/487510936.html

    比如你用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码还原成“你好”,显示在对话框里。
    以上就是大概的过程了。
  • 相关阅读:
    mybatis中resultMap配置细则
    关于mybatis中typeHandler的两个案例
    mybatis映射器配置细则
    mybatis常用配置
    初识mybatis(二)
    初识mybatis
    数值优化(Numerical Optimization)学习系列-无梯度优化(Derivative-Free Optimization)
    交替方向乘子法(ADMM)的原理和流程的白话总结
    用ADMM求解大型机器学习问题
    数值优化(Numerical Optimization)学习系列-目录
  • 原文地址:https://www.cnblogs.com/wandashuai/p/10741064.html
Copyright © 2011-2022 走看看