网络编程学习笔记-OSI模型

学习网络编程也有了两个月左右的时间,刚上来就跟着写回声服务器,对与网络通信是有了初步的模型,写代码是没有问题了。大致的网络通信的架构是有个了解了。可是当提及tcp协议udp协议等种种时,就一头雾水了。http协议等种种协议,我在高中就经常做题,可这么多协议总令我疑惑。对网络通信的模型有一个整体的架构才是解决我疑惑的关键。

OSI(open System Interconnection Reference Modle)开放式系统互联通信参考模型

暂且不看右边这个图。
暂且不看右边这张图
表示层,会话层,物理层:。。。

应用层:用来规定数据的组织格式。例如DNS协议:解析域名为ip地址。HTTP协议:从web服务器传输html语言(超文本标记语言)到浏览器,再解析成网页的协议。

传输层:常用的有tcp,udp协议。用于建立端口到端口的通信。
网络层:如ipv4协议,标志了服务器所处的IP地址。
数据链路层:如以太网,用于标志mac,网卡的地址,也就是局域网内那台机子的特定网卡。

下面是我在wireshark抓包的范例,放在这里用作学习。最后包含了一个client和server的ssl握手环节,遇到不懂,也顺路学了一下(用于服务器与客户端服务器交换**,数据保密)
在这里插入图片描述