首页 > 其他分享 >TCP/IP面试必备

TCP/IP面试必备

时间:2022-11-19 11:05:44浏览次数:47  
标签:反码 首部 IP 必备 校验 TCP ip


TCP/IP面试必备_反码

 

数据流走向可以看成协议栈,后进先出

 

物理层 提供比特流传输  RS232  RS449  RJ45  比如网卡

数据链路层传输单位frame(帧) 介质访问,链路管理

网络层  寻址和路由选择packet  子网数据路由选择 分组重组

IP  IPX  RIP   OSPF  ICMP  IGMP 路由器属于网络层

 

传输层  建立端到端链接   检测路由器丢弃的包,产生重传与排序乱序的数据包

会话层 spdu  建立维护管理会话  

表示层  ppdu 处理数据格式数据加密 格式转换  

应用层apdu  提供应用程序间的通信

http https ftp telnet ssh smtp pop3 

 

应用协议:http,smtp,ftp,telnet,snmp

传输协议:tcp udp

TCP/IP面试必备_校验和_02

网际协议:ip,icmp,arp

路由控制协议:rip,ospf,bgp

TCP/IP面试必备_反码_03

 

应用层:DNS URL HTML  HTTP  TLS/SSL SMTP POP IMAP MIME TELNET SSH FTP SNMP MIB SIP RTP LDAP

传输层:TCP UDP UDP-Lite SCTP DCCP

网络层:ARP IP ICMP

 

网络层

ip属于非可靠性网络协议,不会重发丢失的数据

icmp 用来检测网络安全状况,数据包未送达时发送异常通知

arp 从分组数据包的ip地址中解析出mac地址

传输层

tcp不适合视频会议等场合使用  不能用于广播多播,因为是面向一对一的

udp常用于分组数据较少或者多播、广播通信以及视频通信等多媒体领域。

应用层

http应用层

html表示层

 

其他

SNMP管理的主机、网桥、路由器等称为 SNMP代理agent

代理端保存网络接口信息,通信数据量,异常数据量以及设备温度等,可以通过MIB访问(管理信息基础base)

snmp为应用层 MIB为表示层

 

 

 

封装

 

用户数据-》appi首部  ——》tcp首部 -》ip首部_>  以太网首部

 

以太网首部14 字节  ip  20  tcp 20  以太网尾部 4

分用( demultiplexing)(解封)

根据端口号进行分用,提交给哪一个应用程序

TCP/IP面试必备_校验和_04

 

周知端口 0-1023

注册端口 1024-49151

动态或私有或临时端口  49152-65535

实际上1024就开始分配动态端口,但是sun得rpc从32768开始

 

MTU 最大传输单元 unit

以太网  和IEEE802.3数据帧限制分别是 1500  1492

两台通信主句路径中最小的MTU  叫做路径MTU 不可以超过,会产生分片,降低通信效率

 

以太网帧的格式

 

TCP/IP面试必备_校验和_05

 

IP地址转换为MAC地址 :::  地址解析协议  ARP

MAC --》IP    RARP  反向地址解析

 

 ICMP  用于传递差错信息  时间 回显  网络信息等控制数据  IP->MAC 出错就会用到

ping 也是用到ICMP协议   属于IP 层协议

TCP/IP面试必备_首部_06

 

 

 

例如ping程序数据在网络中的传输过程

TCP/IP面试必备_校验和_07

TCP/IP面试必备_首部_08

 

 

RARP   

一般应用在无盘工作站(没有办法保存地址缓存),但是知道自己的MAC地址

首先向RARP服务器发送请求

 

 

IP数据报格式

总长度0-655535   16位长度

分片也会使用同一个标识号

服务类型 TOS

最小延迟D  最大吞吐量T  最高可靠性R 最小费用F

来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=64

TTL (time to live)

表示数据报最多可经过路由器的数量  如果TTL减为0,丢弃并发送ICMP报文通知源主机

网际校验和(internet checksum)

 

ip首部(不含校验和)反码+0x1111=发送端校验和                (2)

IP首部=ip首部(不含校验和)+发送端校验和

ip首部(不含校验和)反码+发送端校验和反码=接收端校验和    (1)

(1)-(2)

发送端校验和反码-0x1111=接收端校验和 - 发送端校验和

发送端校验和反码+发送端校验和  - 0x1111 =接收端校验和  (3)

ip首部(不含校验和)反码+(ip首部(不含校验和)反码+ 0x1111)反码=接收端校验和

ip首部(不含校验和)反码+ip首部(不含校验和) +0 =接收端校验和

0x0101

0x1010

0x1111

不是完备的校验

 

TCP特点:基于字节流segment段

面向连接

可靠传输

缓存传输

全双工

流量控制

TCP/IP面试必备_首部_09

TCP/IP面试必备_校验和_10

需要源IP  端口  目的 ip  端口

TCP/IP面试必备_校验和_11

TCP/IP面试必备_反码_12

TCP/IP面试必备_首部_13

紧急数据一般称为带外数据

MSS最长报文大小 max segment size

默认536 不超过MTU  超过就会分片

TCP如何保证可靠性

不可靠性: 

差错    通过校验和  如果变化将丢弃不确认 从而导致超时重传

失序    seq序号保证不失序

重复    seq

丢包   超时重传  +确认机制(规定时间未收到确认消息) 但是不是立即发送

TCP还可以提供流量控制  TCP连接的每一方都有一定大小的缓冲空间

 

滑动串口协议(流量控制)

可以用于 链路层  传输层

链路层以帧为单位确认

传输层TCP以字节为单位确认

TCP头部有一个16位整数的窗口大小序号

发送窗口大小必须小于接受窗口大小  就是这个头部决定的

MSS不要超过MTU-20-20

TCP/IP面试必备_反码_14

 

 

UDP效率更高 因为头部比TCP简单

TCP/IP面试必备_首部_15

 

 

 

 

FDDI  光纤分布式数据接口

ATM 异步传输方式

TCP/IP面试必备_首部_16

 

TCP/IP面试必备_反码_17

TCP/IP面试必备_首部_18

 

TCP/IP面试必备_首部_19

 

TCP/IP面试必备_反码_20

 

TCP/IP面试必备_校验和_21

 

解决网络中的环路问题,有生成树、源路由两种方式。

TCP/IP面试必备_首部_22

 

TCP/IP面试必备_校验和_23

TCP/IP面试必备_校验和_24

 

 

 

 

标签:反码,首部,IP,必备,校验,TCP,ip
From: https://blog.51cto.com/u_15883840/5870331

相关文章

  • eclipse 快捷键失效解决方法
    有时候eclispe快捷键失效了,编码起来太难受了。 1、Eclipse下进入Windows->Preperences->General->keys2、把wordcompletion的快捷键设置alt+/删掉!3、把ContentAssist......
  • JavaScript_对象_Global与DOM简单学习
    JavaScript_对象_GlobalGlobal:全局对象1.特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。方法名();2.方法......
  • 使用JSZIP打包下载多个echarts图片
    JSZIP的github地址:https://github.com/Stuk/jszip多个echarts图一键下载charts_all.map(([index,myChart])=>{constimgContent=myChart.getDataURL({......
  • sed 替换字符串和ip ([a-z]+) [0-9.]+
    [root@k8s-master01~]#cataa1.txtaaaabbbcccjfdjkasdfghjzxcvbqwertyuiophelloword[root@k8s-master01~]#sed-nr's#he(.*)rd#\1#gp'aa1.txtllowo[root@k......
  • 如何设置把vscode 左下角的 NPM脚本(NPM SCRIPT)显示出来
    一、如图按照步骤1,2进入设置二、如图设置,选择用户——>扩展——>Npm,4处默认的on,5处要勾选上  三、重启VScode,点开项目中的package.json,然后点击资源管理器旁边......
  • 更改pip安装路径
    pipshowmatplotlib查看安装位置去python环境下lib/site.py文件里修改user_site和user_baseUSER_SITE,更改为anaconda的Lib文件夹下的site-packages文件夹。USER_BASE,更......
  • [Typescript] 110. Hard - Union to Tuple
    Implementatype, UnionToTuple,thatconvertsauniontoatuple.Asweknow,unionisanunorderedstructure,buttupleisanordered,whichimpliesthatwe......
  • 计算机网络原理(TCP/IP协议四):地址解析协议
    ARPARP缓存ARP帧格式ARP缓存超时代理ARP免费ARP和地址冲突检测与ARP相关的攻击关于地址解析协议在之前计算机网络原理(六):链路层与局域网的4.1中就有原理的介绍,......
  • Javascript(笔记44) - ES7特性 - 指数操作符
    Array.prototype.includesincludes 方法用来检测数组中是否包含某个元素,返回布尔值;constmingzhu=['西游记','三国演义','红楼梦','水浒传'];console.log(mingzhu.includ......
  • 同步与异步 multiprocessing 进程对象多种方法
    目录同步与异步阻塞与非阻塞综合使用创建进程的多种方式前言windows系统创建进程的问题(重要)multiprocessing模块之Process展现异步创建进程的方式(一):使用Process()创建进程......