计算机网络基础知识
网络:节点+链路(有线、无线)
因特网服务提供商ISP(中国电信 移动 联通)
三种交换方式:电路交换、分组交换、报文交换
计算机网络分层:MAC+IP+TCP+应用数据
应用层:应用协议、应用进程
传输层:进程之间基于网络通信
网络层:路由分组、多个网络
数据链路层:路由分组多个网络
物理层:电信号、何种信号传输
Http请求数据包封装过程
应用层:HTTP
运输层:HTTP+TCP
网络层:HTTP+TCP+IP
数据链路层:HTTP+TCP+IP+MAC
物理层:比特流
物理层
传输媒体
物理层传输的数据单位:比特
传输方式
并行传输、串行传输
同步传输:数据块以稳定的比特流的形式传输,字节之间没有间隔
异步传输:以字节为独立的传输单位
通信方式:单工(广播)、半双工(对讲机)、全双工(电话)
编码与调制
码元:基本波形
基带信号:数字基带信号、模拟基带信号
常用编码:不归零编码(存在同步问题)、归零编码(效率低)、曼彻斯特编码、差分曼彻斯特编码
混合调制(多元制)调幅、调频、调相(基本调制、二元制)
信道的极限容量
信号失真
奈氏准则、香农公式
物理层协议的主要任务:机械特性、电气特性、功能特性、过程特性
数据传输速率=码元传输速率 x 每个码元可携带的比特数量
数据链路层
路由器包括层:物理层(电信号)链路层(帧)网络层(ip)
数据链路层主要提供功能:封装成帧、透明传输、差错检测(检错码、检错算法)
封装成帧
帧头 + 上层数据单元 + 帧尾 帧定界
透明传输:表示无论发送什么样的数据,这些数据都能够按照原样没有差错地通过数据链路层。
转义字符(帧定界):零比特填充法
差错检测
误码率:错误接收的比特数与发送的总比特数之比
检测方式有奇偶校验、循环冗余校验;确保数据是正确的
奇偶校验:奇偶校验只可以简单判断数据的正确性,从原理上可看出当一位出错,可以准确判断,如同时两个1变成两个0就校验不出来了
循环冗余校验
可靠传输
传输差错:比特差错、分组丢失、分组失序、分组重复
可靠传输实现机制
实现机制:停止-等待协议、回退N帧协议、选择重传协议
停止-等待协议:发送、等待、确认(超时重传);实现简单,但信道利用率低
回退N帧协议:发送窗口、滑动窗口协议
选择重传协议:接收窗口尺寸
点对点协议PPP:一套网络控制协议NCPS、封装成帧、链路控制协议LCP
透明传输:字节填充法(填充转义字符)、比特填充法(填充比特,连续5个1,填充1个0)
字节填充法(填充转义字符)
比特填充法(填充比特,连续5个1,填充1个0)
实现差错检验:循环冗余检验
媒体接入控制(信号碰撞):静态划分信道、动态接入控制
信道复用:频分、时分、波分、码分
MAC地址
主机唯一标识MAC:mac media access controll
出厂时设置硬件地址:48位 6个字节
IP地址
分类IP地址、无分类IP地址
网络号、主机号
网络号、子网号、主机号
ARP协议
ARP协议:地址解析协议
ARP高速缓存表:维持IP与MAC的关系映射
集线器与交换机:集线器属于第一层物理层设备,而交换机属于第二层数据链路层设备。这意味着集线器只是对数据的传输起到同步、放大和整形的作用,而交换机不但可以对数据的传输做到同步、放大和整形,而且可以过滤短帧、碎片等,从而保证数据传输的完整性和正确性。
交换机(帧交换表学习):以太网交换机自学习和转发帧、自行维护、帧交换表(有效期)
以太网交换机生成树协议STP:解决冗余链路、网络环路、广播风暴问题
虚拟局域网(VLAN) 实现机制
交换机实现(打标签)设置端口VLAN
Acess 连接计算机 单VLAN
Trunk 交换机、路由器、多VLAN
网络层
网络互连、数据包传输、TCP协议提供可靠传输、UDP协议提供不可靠传输、网络层寻址问题、路由选择问题
两种服务
面向连接的虚电路服务:虚电路VC
无连接的数据包服务:可靠通信由主机保证
IPV4
32比特标识符、转换为十进制表示
划分子网ipv4
子网掩码、用于标记子网号
网络号+子网号+主机号
默认子网掩码、未借用主机号、未划分子网
A类地址:255.0.0.0
B类地址:255.255.0.0
C类地址:255.255.255.0
ip地址的应用规划:定长的子网掩码FLSM、变长的子网掩码VLSM
IP数据报发送和转发
主机发送IP数据报、路由器转发IP数据包
同一网络:直接交付,不同网络:间接交付
同一网络:IP AND 子网掩码,计算值一致则为同一网络
默认网关(路由器)
静态路由配置:路由环路问题
路由选择协议
静态路由需要网络管理员手动进行配置,每条路由都需要手动指定。动态路由则是由路由器通过网络协议自动学习和维护路由信息。
静态路由、适合小规模、动态路由、使用大规模
运输层
TCP与UDP协议
运输层端口号划分:端口号为2的16次方65535个、01023熟知端口号、102449151登记端口号、49152~65535为短暂端口号
复用与分用:发送方复用、接受收分用
TCP与UDP对比
UDP :面向应用报文、UDP不可靠传输(电话应用)、支持单播、多播、广播、首部小
TCP :面向字节流、全双工通信、TCP可靠传输(文件传输)、单播、首部大
TCP流量控制
滑动窗口机制、确认应答机制:seq序号 ack响应
应用层
BS方式:浏览器/服务器模式(Browser/Server)
CS方式:客户端/服务器模式(Client/Server)
P2P方式:文件共享、即时通信
动态主机配置DHCP:ip地址、子网掩码、默认网关、dns服务器
DHCP服务器:端口67
文件传送协议FTP:Server:端口21、Client:临时端口号即可
域名系统DNS:提供域名与ip映射、层次树状结构的域名结构
http基本概念
http:超文本传输协议
五类http状态码
http常见字段
由于http是无状态,所以需要借助cookie(存储在客户端)来维持会话状态
由于http是明码传输,存在不安全问题,于是就引入了加密传输的https协议
http 端口80、https 端口 443(需要证书)
http1.1 特性
长连接 持久连接 仅需一次3次握手
管道网络传输
同时发送多个请求
响应还是顺序的
队头阻塞
一个数据包在网络中的心路历程
http请求
dns服务:获取域名对应ip
协议栈:tcp/ip
送别者:交换机
出境大门:路由器
路由器基于ip设计:三层网络设备
交换机基于以太网:二层网络设备
网络包传输过程中,源ip与目的ip始终不变,变化的是mac地址
提供可靠传输TCP(不提供可靠传输协议UDP)
tcp报文格式、失败重传(确认送达)、窗口滑动(流量控制)
tcp三次握手的目的:确保双方都具有发送和接收的能力
查看tcp连接状态:netstat -napt
网络包封装:http+tpc+ip+mac
远程定位ip:源地址ip、目的地址ip
两点传输 mac:mac包头+ip头部+tcp头部+http报文
出口网卡:网络、网卡驱动程序、数字信号转换为电信号
ping的工作原理
ip协议助手、icmp协议:互联网控制报文协议
icmp类型:查询报文类型、差错报文类型
ping 查询报文类型使用:mac头+ip头+icmp请求报文
tracerate 差错报文类型使用:构造不可达信息,返回网络节点信息
ip基础知识
IP地址表示:32比特标识符
数据链路层(mac层)网络层(ip头)
ip地址的分类:ABCDE,根据 网络号+主机号拆分
广播地址:主机号全为 1
本地广播:在本网络内广播
直接广播:在不同网络之间的广播
无分类地址CIDR:网络号+主机号
示例:10.100.122.2/24,表示24位作为网络号、8位作为主机号
可用地址数为2的8次方减2:256-2,其中的2个,指的是主机号全为1(表示广播地址),或全为0的地址(表示指向本网)。
子网掩码 255.255.255.0(子网掩码:掩盖掉主机号,用于划分子网)
网络号 10.100.122.0(网络号=子网掩码 AND ip地址)
第一个可用地址:10.100.122.1
最后一个可用地址:10.100.122.254
广播地址:10.100.122.255
未作子网划分ip地址:网络地址+主机地址
按子网划分ip地址:网络地址+(子网网络+子网主机)
默认子网掩码
A类地址的默认子网掩码是255.0.0.0。
B类地址的默认子网掩码是255.255.0.0。
C类地址的默认子网掩码是255.255.255.0。
私有ip地址(固定划分)
A 10.0.0.0~10.255.255.255
B 172.16.0.0~172.31.255.255
C 192.168.0.0~192.168.255.255
公有ip地址:ICANN组织管理
ip地址与路由控制
环回地址不会流入网络:127.0.0.1
ip分片与重组:MTU(最大传出单元) 1500字节
IP协议相关技术
DNS域名解析
ARP与RARP协议
DHCP动态获取ip地址
NAT网络地址转换
ICMP互联网控制报文协议
网络协议分层
应用层:http ftp
传输层:tcp udp
网络层:ip
数据链路层:mac地址
物理层:数据包转化为电信号
常用的网络命令
ping:用来检测网络通不通
ifconfig:用于显示或配置网络设备
traceroute:命令利用ICMP 协议定位您的计算机和目标计算机之间的所有路由器
netstat:用于显示各种网络相关信息
telnet:远程登录服务的标准协议和主要方式
SSH网络协议:SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机
FTP文件传输协议:是用于在网络上进行文件传输的一套标准协议
原文链接:深入浅出计算机网络
本作品采用《CC 协议》,转载必须注明作者和本文链接
赞!