趣谈网络协议(一)

通常来讲,网上的购物.都是基于应用层的Http协议.那么在这一层协议书咱们包装了什么呢,请看下图编程

1、应用层

Http头浏览器

http1.一、POST、URL、正文格式(content-type)、长度(content-length)
请求参数:购买的产品信息、数量

应用层的协议除了http外,还有https(内容在网络中的传输是加密形式的,更为安全。通常支付都用https)安全

通过应用层的封装后,浏览器会将应用层的包交给下一层去处理,经过socket编程来实现。服务器

2、传输层

传输层有两个协议,一个是无链接的UDP协议,另外一种面向链接的TCP协议.TCP能保证请求能最终到达目标服务器,若是不能到达,就会从新发送。网络

老师常常讲的三次握手就是基于TCP协议 1.A→B请求 2.B←A响应 3.A→B创建链接socket

传输层封装了源目标及目标的端口号(程序在系统中都分配有惟一的端口号),这样就能肯定执行此请求的目标程序加密

3、网络层

也是IP层,主要包装源地址和目标服务器地址spa

4、链路层

每台主机只要开机并联网(WiFi、网线)成功,系统都会根据DHCP协议会为电脑分配一个局域网的ip(如192.168.1.110)和独立的MAC地址..net

这一层主要包装了源ip的MAC地址和目标ip的MAC地址blog

根据ARP协议即可得知(通常都是192.168.1.1)路由器(也是网关)的MAC地址,接着再包装网关的MAC地址.网卡再把包发出去.因为包里有网关的MAC地址,因此很快就能找到网关。而每一个路由器都有本身的路由表.他会先查询是否在局网内,若是在局域网内的话就内部消耗.若是是外部地址的话,那就须要网关发送出去

举个例子:

每一个国家都是一个局域网,而MAC至关于每一个人的身份证

在国内探亲的话,咱们能够随意到达

若是咱们要出国探亲的话就得先通过海关.至关于网关

在网络中每两个网关之间连着一个国家

而国家与国家之间的通讯,就要通过层层网关了

这里的网关也就是咱们的路由器,路由器会经过路由表查询目标MAC.若是没有就分配一个就近的网关MAC

直到最后一个网关经过路由表查询到MAC地址,这时候就大吼一声谁是这个地址的,而后目标MAC回应后就能够跟目的地址发起链接通讯了

总结:

下图是每一个层的各类协议,咱们能够按需整合包装

转载于:https://my.oschina.net/u/2283248/blog/1816140