计算机网络个人总览

纯属个人理解,如有错误欢迎指正

         网络通信最终要实现的是进程到进程之间有效的通信,所有的协议存在都是为了服务这一唯一目标。为了实现这一目标用到了一个5层/7层的网络模型,在网络模型中高层的功能是依靠底层提供的功能实现的,分层之间耦合度低(面向对象的思想,通过提供接口的方式来提供服务)可以很方便的实现某一层的单独升级。

目录

 网络模型

 IP地址和MAC地址的区别与联系

 以查看网页的方式看网络的时怎么通信的

参考书籍


 网络模型

7层模型:

应用层:

通过表示层得到的数据向用户提供各种服务(以进程的方式向)

表示层:

将数据编/解码(大小端转换、压缩解压缩等),向上层提供可用于应用层的数据

会话层:

用于控制连接的创建与断开

运输层:

在网络层提供的主机与主机之间通信的基础上,提供两主机之间进程与进程的通信(通过端口号标识进程)

网络层:

在链路层提供的同一链路内两设备之间的通信的基础上,提供相同或不同子网之间主机的通信(整个网络范围内的两主机之间的通信) (通过IP地址标识整个互联网范围内的主机)

链路层:

在物理层提供的信号的基础上实现同一子网内两设备的通信,不同子网之间的通信需要借助网关和网络层来实现 (通过唯一的MAC地址标识主机的物理地址)

物理层:

提供物理信号和0、1标识的电平信号之间的转换(模电转换)

 IP地址和MAC地址的区别与联系

可以认为IP地址是虚拟地址而MAC地址是物理地址,通过IP地址和MAC地址的共同作用下实现全局网络之中不同主机的通信。

在最开始的网络通信之中只支持同一子网之间通信,同一子网内通过MAC地址和交换机来是实现通信。

随着网络的发展不同子网之间也能进行通信,不同子网之间的通信借助网关来实现(由于不同子网之间的链路支持的MTU不同所以网络层也提供了分片的功能,TCP也有分片功能但作用不同),不同网关之间也有链路连接,但是为了不同子网之间能够快速的路由寻址需要借助网络层的功能。

网络层提供的IP地址是有规律的,以网络号和主机号的方式组成,这种有规律的命名方式与MAC这种无规则的命名方式相比有一个优点就是可以实现子网的聚集,子网之间通过最长的相同IP前缀可以聚合成一个新的子网,在路由寻址时依靠这一功能和路由表就可以实现快速寻址。通过路由表找到下一跳的IP地址再通过ARP协议找到与IP地址关联的MAC地址,经过多次重复这一过程就可以实现不同之间的通信。

 以查看网页的方式看网络的时怎么通信的

一、查看网页的第一步是输入URL:

URL的格式为:

协议名 + // + 服务器域名或IP地址 + 端口号(可选的,如果没有输入则按照协议的默认端口号进行) + /  + 所求资源再服务器中的路径 + / +所求资源的名称

二、输入URL后浏览器会解析URL并生成HTTP报文

HTTP报文格式:

三、获得IP地址

如果URL中输入的是服务器的域名就需要通过DNS来获得服务器的IP地址。

DNS协议是通过UDP协议来是实现的(选择UDP的原因是因为UDP不需要建立连接可以快速通信)

DNS的查询方式有两种:迭代式和递归式(主机与本地服务器采用递归式,本地服务器与各级服务器之间采用迭代式)

迭代式:

首先主机向本地服务器提出DNS请求,本地服务器查看缓存,如果缓存中有对应的域名则直接返回IP地址,如果没有则返回根名称服务器给主机

接着主机向根名称服务器提出DNS请求,根名称服务器返回顶级名称服务器给主机

接着主机向顶级名称服务器提出DNS请求,顶级名称服务器返回二级名称服务器给主机

接着主机向二级名称服务器提出DNS请求,二级名称服务器返回目标主机ip给主机

递归式:

四、生成TCP报文

HTTP是基于TCP提供的可靠传输来实现的

在HTTP报文的基础上加上TCP的头部信息(源端口、目标端口、序号、确认号首部长度等)

五、生成IP报文

在TCP报文的基础上加上IP的头部

六、通过IP和ARP协议(网络层、链路层、物理层共同作用)实现主机之间的通信

根据IP报文和路由表获得下一跳的IP地址,依靠IP地址和ARP协议获得下一跳的MAC地址,通过MAC地址和链路层的交换机和物理层的信号传输将IP报文传到下一跳的主机,重复这一过程直至报文传送到目标主机。

七、目标主机通过源端口号和目标端口号识别唯一进程,将HTTP协议交给进程处理。

八、进程解析HTTP协议并生成新的HTTP协议之后重复上述一到七步,将信息传送给源主机。

参考书籍:

计算机网络:自顶向下方法

图解TCP/IP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值