网络编程的第一篇博客,先来说说最基础的网络分层体系结构
OSI(Open System Interconnect,开放系统互连)七层模型
- 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等,它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是我们常说的数模转换与模数转换),这一层的数据叫做比特
- 数据链路层:定义了如何让格式化数据以帧为单位进行传输,以及控制对物理介质的访问,这一层通常还提供错误检测和纠正,以确保数据的可靠传输
- 网络层:在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择,Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层
- 传输层:定义了一些传输数据的协议和端口号(WWW端口80等),如:TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的),主要是将从上层接收的数据进行分段传输,到达目的地址后再进行重组,常常把这一层数据叫做段
- 会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路,主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名)
- 表示层:可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取,例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符,如有必要,表示层会通过使用一种通格式来实现多种数据格式之间的转换
- 应用层:是最靠近用户的OSI层,这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务
TCP/IP四层模型
- TCP/IP网络协议栈分为应用层(Application)、传输层(Transport)、网络层(Network)和链路层(Link)四层
如有侵权,请联系删除,如有错误,欢迎大家指正,谢谢