1.网络发展
数据交换就是网络发展的原动力,网络解决的是数据交换,谁和谁的数据交换。
网络通信:本质上就是进程间通信,之不过,这两个进程不在同一台机器。
网络:本质上就是计算机数量从少变多,计算机由单台完成某个功能变成多台协作完成某个功能的情况。
局域网(LAN) | LAN一般在距离上不超过10km |
城域网(MAN) | 覆盖的地理范围从几十到几百km |
广域网(WAN) | 覆盖的地理范围从数百到数千昆km,甚至上万km |
2.网络协议的初始
协议:约定沟通双方传递信息的格式(就好比人们沟通的时候使用的语言,小日子用日语和我们沟通绝大多数都听不懂,咱们需要约定一起用英文去沟通或者让他们学中文,这就叫协议)。
网络协议:约定网络主机在数据传时候的格式(是一个比较模糊的概念),源自于我们现在还并不清楚的数据格式的具体内容。
网络要完成的事情:将数据从主机A上的进程a传递到主机B上的进程b。
网络协议要完成的事情:约定网络主机在传输数据时候的格式。
结论:
1)在网络当中的“数据”不仅仅只有数据本身还有需要有协议的内容,协议的内容帮助被传输的数据正确的在网络当中传输到对方主机去;
2)基于操作系统和库函数写出来的程序都是应用层程序,产生的数据称之为应用层数据;
3)协议部分,在linux操作系统当中肯定也是用描述的手法(PCB),描述的本质就是一个结构体,换句话说协议部分的内容就是结构体数据。
3.网络协议分层
A.OSI分层模型:应用层-->表示层-->会话层-->传输层-->网络层-->数据链路层-->物理层
B.TCP/IP分层模型:应用层-->传输层-->网络层-->数据链路层-->物理层
结论:
1)应用层数据经过网络传输的时候,需要经过网络协议栈的封装,到达对端之后,需要经过网络协议栈的分用;
2)网络协议栈封装的时候,是增加了协议的内容,为了在网络当中能够正确传输的。
4.网络协议栈当中每一层具体的经典协议和经典设备
应用层
典型的协议:HTTP/HTTPS协议(S的意思是ssl,加密),DNS协议(域名解析协议)
功能:产生应用层数据
传输层
典型的协议:TCP协议,UDP协议
功能:负责端与端之间的传输,“端”指的是端点,也可以叫做端口
网络层
典型的协议:IP协议
功能:负责网络传输的IP地址管理
数据链路层
典型的协议:以太网协议
功能:负责相邻设备的传输
典型的设备:交换机
物理层
典型的协议:以太网协议
功能:负责二进制数据和光电信号的转化
典型的设备:集线器(放大信号)
5.IP地址和MAC地址的初始
5.1.IP地址
本质:ipv4版本的ip地址是一个无符号的32为整数,范围是[0 , 2^32 - 1]
所以一共有42亿9千多万个ip地址,所以一共可以容纳42亿多设备挤爆网络
作用:在网络当中标识一台主机
5.2.MAC地址
本质:长度上为48比特位,6个字节,一般用十六进制数字加上冒号来表示
作用:表示具体的一块物理网卡设备,网卡设备在出场的时候都会打上全球独一无二的MAC地址
ip地址并不是永远绑定给一台机器,ip地址和机器的关系并不是全球唯一。