IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络复习 -> 正文阅读

[网络协议]计算机网络复习

秋招加油


网络模型

模型


功能概述

应用层:进程之间通信
运输层:给进程提供通用的数据传输服务,不针对特定网络,多应用可用 寻址:套接字,socket(IP地址: 端口)
网络层:通过路由器连接各类异构网络 寻址:IP地址
数据链路层:一段一段的链路 寻址:MAC地址
物理层:bit流,电缆的插头及引脚连接方式
物理媒体:光缆、电缆,第0层


数据链路层

封装成帧:SOH、EOT,有帧头和帧尾
透明传输:对SOH、EOT、转义字符前再加转义字符
差错检测:循环冗余校验CRC。 CRC能实现无比特差错检验,但不是可靠传输,不能解决帧丢失、帧重复、帧时序的问题,改错由上层协议完成。
PPP协议: point to point protocol,点对点传输协议,一对一
CSMA/CD: Carrier Sense Multiple Access with Collision Detection. 载波监听多路复用,冲突检测。广播,在总线型网络上,边发送边接听。一个站点不能同时接收和发送。双向交替通信,半双工。

网桥:一次分析转发一个帧。
交换机:多端口的网桥,独占传输媒体,无碰撞传输


网络层

best effort 无连接(不需要预先建立连接)

协议:IP,配套三个协议: ARP(地址解析协议 IP->MAC) ICMP IGMP
IP地址:网络号+主机号
A类地址:0xxxx.xxx.xxx.xxx 其中,全0(this)和127(环回测试)被用 范围:1~126
B类地址:10xxx.xxx.xxx.xxx 其中, 128.0不可指派 128.1~191.255
C类地址:110xx.xxx.xxx.xxx 其中,192.0.0不可指派,192.0.1~223.255.255
子网掩码:与&操作获取网络号

RIP(Routing Information Protocol): 基于距离向量的路由选择协议
打表:目的网络 距离(hop) 下一跳路由器
路由器之间会交换信息

虚拟专用网络VPN,拓展IP地址。仅在本机构(局域网)有效的IP地址,本地地址,全球唯一的IP地址:全球地址。
Private address 范围: 10.0.0.0-10.255.255.255 24位块
172.16.0.0-172.31.255.255 20位块
· 192.168.0.0-192.168.255.255 16位块
还有一类VPN,远程接入VPN(remote access VPN),在外地用公司的内网
NAT网络地址转换:用于本地IP与互联网主机通信
方法:NAT路由器至少有一个有效的全球IP地址,然后用它转发。

网络层能完成两台主机之间的逻辑通信,运输层能完成进程之间的逻辑通信。运输层包含差错检测。


运输层

用套接字定位进程

UDP(6点):

  • 无连接,不需要预先建立连接
  • Best effort,尽最大努力交付
  • 面向报文,对应用层给下来来的报文,不合并、不拆分,加个UDP首部
  • 没有拥塞控制,不会使源主机发送速率降低 e.g.视频会议
  • 一对一、一对多、多对一、多对多
  • 首部开销小

TCP(5点):

  • 需要预先建立连接
  • 一对一
  • 可靠交付
  • 全双工
  • 面向字节流,将应用层数据看成一串字节流,看按照需要合并拆分,加上TCP头部

TCP三次握手创建连接,四次挥手释放连接
握手:三次握手
为什么是三次不是两次?
如果是两次,若SYN1堵塞,客户端重发SYN2并成功建立连接。这时SYN1送达,服务器端认为客户端建立了新连接,回复SYN2+ACK2,对于客户端来说,客户端只建立了一个连接,服务器端认为是两个连接,不一致。

TCP在不可靠的信道上保证了可靠的连接。对于丢包、失序,TCP发送时有发送缓冲区,发送segment时会标注序列号、长度,可以对丢失的包重新请求,对失序的包重新排序。
TCP一问一答,一方发送报文,另一方回复确认 ACK=序列号+长度 = 下一包的起始序列

四次挥手
*客户端和服务器端都可以发起释放连接请求
四次挥手


应用层

1.
DNS 域名解析服务 IP地址和域名相互映射
域名结构: xxx.edu.cn 三级域名.二级域名.顶级域名
域名查询:递归查询、迭代查询(下一级服务器如果找到目标,则返回目标,若没找到,则给出下一个要查询的域名服务器)

HTTP 无状态,不记忆交互场景
HTTP方法
信息码:
1xx 收到/正在处理
2xx 成功/知道
3xx 重定向,需要采取下一步行动
4xx 客户端差错,请求有误
5xx 服务器端差错


常见问题

  • 简述一下五层模型
  • 简述一下TCP协议
  • 简述一下TCP和UDP的区别
  • 为什么TCP创建连接要进行三次握手而不是两次?
还有会问http和https的,这一部分后面再补充。
按照自己的理解整理的,若有错误,期待指正。
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-05 11:23:21  更:2021-09-05 11:26:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 23:15:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码