网络编程其一

一、CS架构与BS架构:即数据在客户端与服务端传输的过程,客户端软件(Client)或浏览器(Browser)<recv===send>操作系统<recv===send>计算机硬件<recv===send>物理连接介质<recv===send>计算机硬件<recv===send>操作系统<recv===send>服务端软件(Server)。

二、网络通信:网络是由物理连接介质与互联网通信协议组成的,网络存在的意义就是为了能够跨地域的传输数据,这个过程就称为通信。

三、OSI七层协议:应用层===>表示层===>会话层===>传输层===>网络层===>数据链路层===>物理层。

四、五层协议:即把应用层+表示层+会话层,统称为应用层,于是变为应用层===>传输层===>网络层===>数据链路层===>物理层。

五、协议的意义:规定了数据的组织格式为,报头部分+数据部分,发送者数据的计算,由应用层产生的数据向下传递的过程即为封包的过程,每传一层,需要将数据加上报头,下次封包时,再将包含上层报头在内的整体作为数据部分再封包,知道传给物理层,物理层会将数据链路层递来的包裹转为二进制形式。接收程序的计算机,在物理层得到二进制形式的包裹,再逐层去报头,这个过程就是解包。

六、物理层:负责发送代表二进制含义的电信号。

  1、一组数据称为:位。

  2、整段的电信号没有实际含义,需要进行分组。

七、数据链路层:使用ethernet以太网协议。

  1、一组数据称为:帧。

  2、数据帧分为:报头+数据。

  3、报头:源地址与目标地址,该地址是mac地址。

  4、数据:网络层传来的整体内容。

  5、只要是接入互联网的主机,都有一块网卡,每块网卡在出厂时都被烧制了一个全球唯一的mac地址。

  6、以太网协议的工作方式是:广播。

八、网络层:IP协议。

  1、一组数据称为:包。

  2、数据包分为:报头+数据。

  3、报头:源地址与目标地址,该地址是IP地址。

  4、数据:传输层传来的整体内容。

  5、IP协议用来划分广播域,每个广播域如果要与外部通信,需要有一个网关来专门负责把自己广播域内的计算机数据包发到公网,网关发送数据包用的是路由协议。

  6、ipv4地址:0.0.0.0到255.255.255.255。

  7、子网掩码:以24为例,255.255.255.0。

  8、完整的IP地址,以ipv4/24为例,应该为0.0.0.0到255.255.255.255/255.255.255.0(24)。其与计算结果,应为0.0.0.0到255.255.255.0。所以可以根据两台计算机的与计算结果判断是否在同一广播域。

九、ARP协议:路由器拿到IP地址后,能够将IP地址解析为mac地址,需要用到ARP协议。

十、同一局域网的两台计算机之间的通信:路由器拿的数据包是这样,(源mac地址,xxxx)(源IP地址,目标IP地址)数据,然后将IP地址进行与运算后的结果是相同的,会根据ARP协议解析出目标mac地址,则可以发送给对应的计算机了。

十一、不同局域网的两台计算机之间的通信:路由器得到的IP地址与运算结果不同,就会根据ARP协议解析出网关的mac地址,然后发送给网关,再有网关发向公网走路由协议给到目标的路由器,目标路由器再根据ARP协议解析出自己局域网的对应计算机发送数据包。

十二、小结:IP地址+mac地址==》定位到全球唯一的一台计算机,因为可以根据ARP协议参照IP地址解析出mac地址,所以可以说根据IP地址就能定位到全球唯一的一台计算机。

猜你喜欢

转载自www.cnblogs.com/caoyu080202201/p/12716959.html
今日推荐