第一章 概述
TCP/IP协议族
TCP/IP协议族是由链路层、网络层、运输层、应用层四层协议组成
计算机网络七层模型(OSI)与该模型的联系链接: 图来源
其中,应用层与下三层的两个显著区别在于:
- 应用层中的程序作为应用程序运行,而下三层一般在操作系统内核中进行
(附:Linux操作系统的组成部分) - 应用层关注应用程序的细节而非数据在网络中的传输活动,下三层相反
好处:使用分层的协议族系统,可以在应用程序中隐藏所有的物理细节
互联网地址
IP地址共有A、B、C、D、E五类(好敷衍)
各类地址的组成、分配范围、用途不同。
- 组成:
1. 网络号:决定这个IP地址被送到哪个子网
2. 主机号:决定这个IP地址被送到哪个主机
注意:D类地址用于多播和广播 - 分配范围:重点,这是辨别一个IP地址是哪种地址的重要依据。
其实,根据上图的最高几位可以看出有几位是固定的,这就导致了分配范围的不同,具体见图。
域名系统(DNS)
定义:DNS是一种分层的,分布式的数据库
用途:提供从IP地址到主机名的映射
封装与分用
计网中的封装说白了就是发送端主机每层中的协议在报文上加点东西,以标识一些需要别人(下层协议,路由器或接收端主机)知道的信息
而分用,就是封装的逆过程,在接收端从下到上的过程中,一层层拆掉封装上的数据,这些协议可以通过这些来知道一些信息,比如确定要接收报文的上层协议
客户-服务器模型
服务器类型:重复型和并发型
重复型服务器逐个接收并处理用户请求,而并发型服务器在接收到一个请求后,会创建一个新服务器来处理这个请求,这就实现了其并发的功能(当然也需要操作系统允许并发)
端口号
类型:知名端口号,临时端口号
知名端口号(0-1023):服务器中特定协议使用的端口号
临时端口号(1024-5000):客户进程使用的端口号
(保留端口号:Unix系统中的root可以为自己分配一个保留端口号)
标准的简单服务(每种协议几乎都提供)
互联网
定义:用一个共同的协议族将多个网络连接在一起
应用编程接口(API)
- 定义:构建应用程序软件的一组定义,协议和工具
- TCP/IP常用两种接口:socket和TLI(运输层接口)