计算机网络的体系结构
几个基本概念
- ISO:国际标准化组织;
- OSI/RM:互联网法律上的国际标准;
- TCP/IP Suite:因特网事实上的国际标准;
- Network Protocols:数据交换准守的规则、标准或约定;
- 网络体系结构:就三级网络各层及其协议的集合;
分层的必要性
- 灵活性好;
- 结构上可分割开,各层之间是独立的:每一层发生改变不会影响其它层(整体);
- 易于实现和维护;
- 能促进标准化工作;
OSI 7层参考模型
- 应用层:能够产生网络流量和用户交互的应用程序;
- 表示层:加密和压缩,开发人员需要考虑的问题。比如QQ聊天时如何对传输的聊天记录进行加密?再比如乱码问题,都是表示层需要考虑的问题;
- 会话层:服务器和客户端建立的会话。该层可以查看木马,输入命令 netstat -nb(参数b可查看木马名称);
木马与病毒的区别:木马一般用于窃取会话信息;病毒一般会破坏计算机。
- 传输层:可以进行
- 可靠传输(建立会话),比如下载电影要把电影分成几个小的数据包进行传输,若果丢了其中几个包最后文件就不能运行,所以需要建立会话记录数据包的传输信息;
- 不可靠传输(不建立会话),比如URL域名解析,只需要一个数据包就能解决不需要建立会话记录具体信息;
- 流量控制:当客户端发送大量数据包给服务器端时,服务器处理不过来,反过来告诉客户端少发点或者慢点发送数据。
- 网络层:负责IP地址编址,选择最佳路径;
- 数据链路层:规定数据如何封装,添加物理层地址(MAC地址);
- 物理层:规定电压、接口等标准;
应用举例
典型的案例就是:改了IP地址还能使用服务器吗?
IP地址是网络层的工作,服务器提供的服务都是应用层的工作;如果采用分层思想设计计算机网络,各层之间相互独立、互不影响就不会出现这样的问题了。
相反如果修改了计算机的IP地址,该计算机就无法使用原来服务器的应用服务了。问题的根源在于没有采用分层的设计思想。把网络层的工作附加到了应用层里面,这样增大了耦合性,导致整个组网的独立性和可维护性较差。
所以设计计算机网络的时候要遵守分层原则:每一层的改变不会影响其他层。
网络排错
网民戏称排错三法宝:重装、重启、格式化
网络排错应该从底层到高层,逐一排查。
比如:计算机上不了网了。最基础的应从物理层开始排错,即看看网线插好了没有?路由器是否正常工作?在一层层往上排查。
网络安全和OSI参考模型
- 物理层安全:比如断开不使用的交换机接口,防止为其他用户提供接入交换机的机会以窃取交换机连接的其他用户的信息;
- 数据链路层安全: 比如wifi的加密。不加密的无线信号任何人都可以连上;
- 网络层安全:比如公司有两个部门:研发部和市场部,他们的网络通过公司的路由器接在一起,路由器接Internet,为了防止研发部资料泄露,可以在路由器中设置研发部的网络不能访问Internet而市场部的可以。
- 应用层安全:比如SQL注入漏洞、上传漏洞。
TCP/IP 的四层模型
可以看到TCP/IP 四层模型中的应用层,包含了OSI七层模型中的的应用层、表示层和会话层;并把数据链路层和物理层合为一层。
教材中的五层模型,只是把OSI七层模型中的的应用层、表示层和会话层合并为应用层;
开放系统信息交换涉及的几个概念
关系:
- 服务用户与服务提供者这两层中各自的实体使用的协议不同,因此不同层实体之间无法通信。
五层协议对应的数据单元
例如:主机1向主机2传输数据。
注意
- 主机1发送数据时,从AP1到1层,每往下传输一层就加入去相应的尾部(首部);
- 主机2接收数据时,从1层到AP2,每往上传输一层就要剥去相应的尾部(首部)