1.在网络中,随着覆盖范围的不同,将网络划分为了一下几种类型:
- 局域网(LAN):是指某一区域内由多台计算机互联成的计算机组。一般范围是几千米以内。
- 城域网(MAN):是在一个城市范围内所建立的计算机通信网。
- 广域网(WAN):一个国家或国际间建立的网络都是广域网,范围:几十公里至几万公里。
2.接下来我们来了解一些基础概念:
-
IP地址:在计算机网络中用来标识唯一 一台设备的一组数字。
现在还在使用IPV4,uint32_t,无符号32位整数,IP地址数量不到43亿,采用"点分十进制"来表示。
随着计算机的发展,IPV4所产生的地址已经不能满足我们的需求,所以产生了IPV6,无符号128位整数,完全可以满足现在的需求;但因为不能兼容IPV4,所以没有很好的被应用起来。
在网络中的每条数据都会包含两条信息:源端IP地址、目的端IP地址。 -
PORT端口:用来在一台主机上唯一标识一个进程。
uint16_t,无符号16位整数,0~65535。
0-1023基本已经被知名协议占用,例如:HTTP:80、HTTPS:443。
在网络中的每条数据都会包含两条信息:源端端口、目的端端口。
特性:一个端口只能被一个进程所占用,但一个进程可以使用多个端口。 -
协议:简单来讲,就是通信双方数据格式的约定。
-
协议分层:即协议的封装,按照每一层提供的服务、使用的协议,对复杂的网络环境进行分层。
下来我们来说说两种网络通信中的协议分层:
3.OSI七层参考模型:
- 应用层:提供应用程序运行的环境,负责管理和执行应用程序。
- 表示层:为数据传输格式提供一套规则和约束。
- 会话层:对会话双方进行资格审查,并规定发送时的双工模式。
- 传输层:负责端与端之间的数据的可靠传输。
- 网络层:负责地址管理与路由选择。
- 链路层:确定MAC地址并进行传输过程中的错误检查。
- 物理层:解决两台物理机之间最基本的通信需求。
这样的分层太过复杂,难以使用,所以现在大多数都采用TCP/IP五层模型:
4.TCP/IP五层模型:
- 应用层:负责应用程序之间的数据沟通,知名协议有HTTP协议。
- 传输层:负责端与端之间的数据传输(两个进程之间的数据传输),知名协议有TCP/UDP协议。
- 网络层:负责地址管理与路由选择(为每条数据选择合适的路径),知名协议有IP协议。
- 链路层:负责相邻设备之间的数据传输,知名协议有Ether协议。
- 物理层:负责光电信号的传输,知名协议有以太网协议。