计算机网络学习笔记
课程为:bilibili上的湖南科技大学的计算机网络微课堂
1 网络体系结构
包含OSI体系结构(法律上的标准)及TCP/IP体系结构(事实上的标准)。
TCP/IP体系相对于OSI体系结构,将数据链路层和物理层合并为网络接口层,去除了表示层和会话层。
IP协议互联不同的网络接口,并为上层的各种网络应用提供服务。
2 一些术语
-
实体:任何可发送或接受信息的硬件或软件进程
-
对等实体: 收发双方相同层次中的实体
-
协议数据单元:对等层次之间传送的数据包称为该层的协议数据单元
-
协议的三要素:
- 语法 定义所交换信息的格式
- 语义 定义收发双方所要完成的操作
- 同步 定义收发双方的时序关系
-
服务访问点: 在同一系统中相邻两层的实体交换信息的逻辑接口,用于区分不同的服务类型
-
数据链路层的服务访问点为帧的“类型”字段
-
网络层的服务访问点为IP数据报的首部中的“协议”字段
-
运输层的服务访问点为端口号
-
协议数据单元PDU 对等层次之间的传送的数据包为该层的协议数据单元
-
3 物理层
4 数据链路层
链路就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点数据链路是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路数据链路层以帧为单位传输和处理数据
4.1 MAC地址、IP地址以及ARP协议的概念
MAC(Media Access Control)地址是以太网的MAC子层所使用的地址(数据链路层),MAC地址是为了唯一标识同一广播信道上的唯一主机,即一个数据链路层地址。IP地址是TCP/IP体系结构网际层所使用的地址 ,是因特网上的主机和路由器所使用的地址,用于标识两部分信息:- 网络编号: 标识因特网上是数以百万的网络
- 主机编号: 标识同一网络上不同主机(或路由器接口)
ARP 协议属于TCP/IP体系结构的网际层,其作用是已知设备所分配到的IP地址,使用ARP协议可以通过该IP 地址获取到设备的MAC地址
4.2 集线器和交换机
4.3 虚拟局域网VLAN
虚拟局域网(Virtual Local Area Network)是一种将局域网内的设备划分为与物理位置无关的逻辑组的技术,这些逻辑组具有某些共同的需求。
PS: 虚拟局域网与无线局域网不同。虚拟局域网说的是网络技术,而无线局域网说的是网络设备!虚拟局域网是通过虚拟技术构建局域网,可以是有线也可以是无线!无线局域网则是通过无线信号发射设备构建的局域网。
5 网络层
IP地址概述
5.1 分类编址的IPV4地址
根据网络号和主机号的位数的不同而进行划分
- A
- B
- C
- 24位网络号、8位主机号
- 最小网络号192.0.0.0 最大网络号 223.255.255.0
- 可指派的网络数量为 2^(24-3)^ = 2097152
- 每个网络中可分配的网络数量为 2^8^ -2 = 254 (减2的原因是除去主机号全为0的网络地址和全1的广播地址
5.2 划分子网的IP地址
为了满足IP地址划分的精细化要求,将IP地址中的主机号部分借用几个比特作为子网号;
子网掩码 : 32位比特的子网掩码可以表明分类IP地址的主机号被借用了几个比特作为子网号
5.3 无分类编址的IP地址
CIDR使用斜线计法,在IPV4地址后面加上斜线"/",在斜线后面写上网络前缀所占的比特数量
5.4 IP数据报的发送和转发过程
-
主机发送IP数据报
-
路由器转发IP数据报
IPV4数据报的首部格式
ICMP 网际控制报文协议
ICMP(internet control message protoc)
- 终点不可达
- 源点抑制
- 时间超过
- 参数问题
- 改变路由(重定向)
虚拟专用网VPN(Virtual Private Network)
网络地址转换NAT(Network Address Translation)
NAT的基本原理就是将内网中的专用ip地址与互联网中的网络地址进行对应
NAT能使大量使用内部专用地址的专用网络用户共享少量外部全球地址来访问因特网上的主机和资源
NAT 外网主机无法首先发起通信,能为内网主机提供一定的安全抱回
6 运输层
物理层、数据链路层以及网络层共同解决了将主机通过异构网络互连起来所面临的问题,实现了主机到主机的通信。
实际上在计算机网络中进行通信的真正实体是位于通信两端主机中的进程,如何为运行在不同主机上的应用进程提供直接的通信服务是运输层的任务
TPC 三报文握手
TCP "四报文挥手"
7 应用层
应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目标。
客户/服务器方式(C/S方式)和对等方式(P2P方式)

FTP 文件传送协议
万维网WWW
万维网使用统一资源定位符URL来指明因特网上任何种类"资源"的位置。
HTTP 超文本传输协议
HTTP定义了浏览器怎么向万维网服务器请求万维网文档,以及万维网服务器怎样把万维网文档传送给浏览器
HTTP的报文格式
HTTP 是面向文本的,其报文中的每一个字段都是一些ASCII码串,并且每个字段的长度都是不确定的。