计网之基础篇

news/2024/5/18 15:29:14 标签: 网络, tcp/ip, udp

因特网协议概述

在这里插入图片描述

常用协议
应用层HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)、DNS(域名系统)、DHCP(动态主机配置协议)、SNMP(简单网络管理协议)
运输层TCP(传输控制协议)、UDP(用户数据报协议)、SCTP(流控制传输协议)、DCCP(数据报式传输协议)
网络IP(Internet Protocol) 、ICMP(Internet Control Message Protocol)、ARP(地址解析协议)、RAR(逆地址解析协议)、OSPF(开放最短路径优先)、BGP(边界网关协议)
链路层PPP(点对点协议)、HDLC(高级数据链路控制)、Ethernet(以太网)、Wi-Fi(无线局域网)、ATM(异步传输模式)、FDDI(光纤分布式数据接口)
物理层IEEE 802.3(以太网)、IEEE 802.11(Wi-Fi)、SONET(同步光纤网络)、DSL(数字用户线路)、USB(通用串行总线)、HDMI(高清晰度多媒体接口)

键入网址到网页

在这里插入图片描述

解析url

url实际是请求服务器的文件资源

在这里插入图片描述

生成HTTP请求信息

参见《计网之应用层》的HTTP请求报文、响应报文

DNS查询IP地址

参见《计网之应用层》的DNS域名系统

OS的协议栈

  • ICMP用于告知网络包传送过程中产生的错误以及各种控制信息
  • ARP用于根据IP地址查询相应的以太网MAC地址

在这里插入图片描述

TCP精简版

TCP报文头部

在这里插入图片描述

  • 序号:解决包的乱序
  • 确认序列:解决丢包
  • 窗口大小:流量控制、拥塞控制的缓存大小

状态位

  • SYN:发起连接
  • ACK:回复
  • RST:重新连接
  • FIN:结束连接
  • URG:指示紧急数据的存在,通常与紧急指针字段一起使用
  • PSH:指示数据的即时传输和处理

数据部分为HTTP报文

三次握手

保证双方都发送和接收的能力

在这里插入图片描述

查看TCP的连接状态

在这里插入图片描述

若HTTP请求信息超过MSS长度,TCP将其拆解为块

  • MTU(Maximum Transmission Unit)(最大传输单元):一个网络包的最大长度
  • MSS(Maximum Segment Size)(最大分段大小):除去IP和TCP头部后,一个网络包容纳TCP数据的最大长度

在这里插入图片描述

IP精简版

在这里插入图片描述

路由表规则:判断哪个网卡作为源地址IP

在这里插入图片描述

  • 第一条目的目标地址和子网掩码都是0.0.0.0,表示默认网关,若其他条目都无法匹配,则自动匹配这一条目,并且Gateway是路由器的IP地址
  • 假设Web服务器的目标地址是192.168.242.10,按序与每一条目的子网掩码进行与运算,并与目的地址匹配,第三条目匹配成功,所有使用ens33网卡的IP地址作为IP包头的源地址

MAC

在这里插入图片描述
发送方的MAC地址:网卡生产时写入ROM
接收方的MAC地址:ARP协议在以太网中广播IP地址,获取MAC地址

查看ARP缓存内容

在这里插入图片描述

网卡

数字信号转化为电信号
本身具有MAC地址,核对包的接收方是不是自己

在这里插入图片描述
FCS(Frame Check Sequence)帧校验序列:检查包是否损坏

交换机(链路层)

电信号转化为数字信号
本身不具有MAC地址,不核对,直接接收
内部有映射表,将MAC地址映射为网线端口

路由器(网络层)

路由器的端口具有MAC地址,只接收地址匹配的包
接收包后,去掉包的MAC头部,使用路由表根据IP头部转发,发送时添加新的MAC地址

服务器和客户端

除去MAC头部、IP头部、TCP头部,得到HTTP数据


http://www.niftyadmin.cn/n/468598.html

相关文章

Canvas基本使用

1.canvas基本使用 1.1.说明: canvas是双标签,h5中新增的属性默认宽高为300*150浏览器默认canvas展示的是一张图片给canvas添加文字内容是没有任何意义的canvas画布:绘制图形,显示一个文字,必须通过js操作 不要通过样式去设置画…

如何在jupyte notebook中,一次性运行全部的代码

第一步,选择键盘图表 第二步,选择run all cells

LeetCode初级算法-数组

初级算法 一、删除排序数组的重复项 题目:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 …

scratch绘制正方形 少儿编程 电子学会图形化编程scratch编程等级考试二级真题和答案解析2023年5月

目录 scratch绘制正方形 一、题目要求 1、准备工作 2、功能实现 二、案例分析</

正点原子uboot分析

知识点 为终端不输出command line&#xff1a;终端输入如果变量quiet为空的话&#xff0c;整个命令都会输出。 如果变量 quiet为“ quiet_”的话&#xff0c;仅输出短版本。 如果变量 quiet为“ silent_”的话&#xff0c;整个命令都不会输出。sinclude&#xff1a;读取的文件…

GP232RNL——USB到UART桥接控制器

GP232RNL是一款高度集成的USB到UART桥接控制器&#xff0c;提供了一种简单的解决方案&#xff0c;可以使用最少的元器件和PCB空间&#xff0c;将RS232接口转换为USB接口。GP232RNL包括一个USB 2.0全速功能控制器、USB收发器、振荡器、EEPROM和带有完整的调制解调器控制信号的异…

【Java】JVM(五)

垃圾回收机制 判断对象的存活 在堆里面存放着几乎所有的对象实例&#xff0c;垃圾回收器在对对进行回收前&#xff0c;要做的事情就是确定这些对象中哪些还是“存活”着&#xff0c;哪些已经“死去”&#xff08;死去代表着不可能再被任何途径使用得对象了&#xff09; 可达…

IMX6ULL——音频驱动

WM8960简介 WM8960内部 ADC和 DAC都为24 I2S 总线接口 2S 总线用于主控制器和音频CODEC 芯片之间传输音频数据。 I2S 接口需要3 根信号线(如果需要实现收和发&#xff0c;那么就要4根信号线&#xff0c;收和发分别使用一根信号线)&#xff1a; SCK&#xff1a;串行时钟信号&…