OSI七层模型和两主机传输过程(转)

附赠大图一张


0_1325744597WM32.jpg

作者:繁星亮与鲍包包
链接:https://www.zhihu.com/question/24002080/answer/31817536
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

Paste_Image.png

撇开复杂与晦涩难懂的术语不说,个人理解七个层次通俗来说主要实现以下内容:
应用层:就是应用软件使用的协议,如邮箱使用的POP3,SMTP、远程登录使用的Telnet、获取IP地址的DHCP、域名解析的DNS、网页浏览的http协议等;这部分协议主要是规定应用软件如何去进行通信的。
(应用层此部分有修改,感谢@小张指正。)
表示层:决定数据的展现(编码)形式,如同一部电影可以采样、量化、编码为RMVB、AVI,一张图片能够是JPEG、BMP、PNG等。
会话层:为两端通信实体建立连接(会话),中间有认证鉴权以及检查点记录(供会话意外中断的时候可以继续,类似断点续传)。
传输层:将一个数据/文件斩件分成很多小段,标记顺序以被对端接收后可以按顺序重组数据,另外标记该应用程序使用的端口号及提供QOS。(不同的应用程序使用不同计算机的端口号,同样的应用程序需要使用一样的端口号才能正常通信)
网络层:路由选路,选择本次通信使用的协议(http、ftp等),指定路由策略及访问控制策略。(IP地址在这一层)
数据链路层:根据端口与MAC地址,做分组(VLAN)隔离、端口安全、访问控制。(MAC地址在这一层)处理VLAN内的数据帧转发,跨VLAN间的访问,需要上升到网络层。
物理层:将数据最终编码为用0、1标识的比特流,然后传输。(例如将题主头像的图片,变为一串01100111100这样的数字来表示)。
基础理论说完,接着回答题主的主题:
两主机通信的过程,从发送者(以下简称A)到接收者(以下简称B),属于从7层(应用层)->1层(物理层)封装,然后传输到远端,再从1层(物理层)->7层(应用层)解封装的过程。
1、 当A打开了QQ这个软件,相当就到达应用层了;因为软件会根据你的操作调动机器底层的硬件工作了。
2、 当A往QQ这个软件的聊天窗口里面输入信息,发出后,QQ会将这个信息保存在本地聊天记录文件MSGEX.db(一般就保存在QQ目录下以你的QQ号码为文件夹里)。以某种格式编码/保存某种信息,这可以理解为表示层了。
3、 当A打开与B的聊天窗口,输入信息,按下“输入”按钮,用户的操作就完结了,剩下都是机器自己的操作了。实际传输之前QQ会先建立A与B的会话连接,才真正开始传输信息/数据(你可以理解借传输文件理解:你发送文件给对方,要等待对方按下接收,才算建立了会话,然后才开始传输。)这算会话层了。
4、 会话建立后,会将A发的信息斩件,如A发送“你吃了饭没有”?传输层将这句话斩成“你”“吃”“了”“饭”“没”“有”6个数据段,标记号使用的端口号,然后准备发出去。
5、 接上一层,信息还未发出去,这时候在网络层做路由选路,可以理解为,从A家出去,可以分别经“联通”“电信”“移动”3个网络中的一个再到B家。
网络层根据路由协议负责选路(根据链路质量、带宽、开销等方法论)。假设最后选了2条,可能就A->联通->B发送“你”“吃”“了”3个数据段,A->电信->B发送“饭”“没”“有”3个数据段。
选路后,这一层要标记IP包头,包头主要内容是源IP地址,目的IP地址,使用什么协议。其中源、目的IP相当于你寄信的时候的收发的地址与邮政编码,标记出发送者与接收者。而协议相当于这封信到底用什么语言书写。(只有保证2端使用同种语言,才能确保通信起来,否则你用英文写信给大妈,大妈怎么看得懂呢?)
6、 然后再到数据链路层,数据链路层主要是负责同一个子网内的通信的。例如A、B连接在同一台二层交换机,就属于同一个子网,那么数据帧的通信室是不需要通过网络层的(即三层交换机或者路由器),直接在这台二层交换机就过去了。这一层打的是MAC地址的帧头,对于上述通信过程来说,就是为数据帧打上A的机器的MAC与A的网关的MAC。这一层的工作就完成了。
7、 最后一层了,经过上述斩件、打完各层标签后的6个数据帧,物理层将他们翻译文6段0、1表示的比特流,然后通过光纤、铜缆进行传输。
8、 当比特流传输到了远端,接着B的机器按照上述的1~7的步骤反方向运行一次即可(即有物理层到应用层)。就是一层层读取标签,传输给标签标记着的相应对象,然后摘除标签,再读取上一层标签,直到最后B的应用程序能够读到A往应用程序输入的数据为止。


对于题主的评论,补充2个图;
2个主机之间的通信,对于2台主机来说,肯定是都需要跨越7层的,而平常说的只需要去到2层或者3层,其实是对于中间系统而言的,就是说中间的交换机、路由器而言;
例如图1的假设两端的通信实体在一个局域网内,其实传输的数据包去到交换机时,交换机拆开二层帧头,再查自身的MAC地址表,发现表里面有对应的MAC地址,然后对应的对口是哪个,接着就把帧发送到该端口转发出去,它的任务就完成了。根本不需要到达网络层的意思是,根本都不需要拆卡3层的IP包头来读取里面的信息。
通过转发,最好到达B主机,然后从1层拆到7层,B用户的主机最终就读取到信息了。

Paste_Image.png

对于图2,由于A、B两通信实体跨域广域网,所以光靠MAC地址表,肯定是查不到的,这时候路由器会把IP包头也拆开,读取目的IP地址,再查路由表,就知道往哪个端口发出去了。然后层层转发,就可以达到目的地了,接下来就和图1的一样了。

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,013评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,205评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,370评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,168评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,153评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,954评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,271评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,916评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,382评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,877评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,989评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,624评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,209评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,199评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,418评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,401评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,700评论 2 345

推荐阅读更多精彩内容