当前位置: 首页 > news >正文

TCP-IP详解卷一:协议——阅读总结

该内容适合程序员查看

第1章 概述

1.1 引言

WAN全称是 Wide Area Network,中文名为广域网。
LAN全称是 Local Area Network,中文名为局域网。

1.2分层

ICP/IP协议族通常被认为是一个四层协议系统

分层协议
应用层Telnet、FTP和e-mail
运输层TCP和UDP
网络层IP、ICMP和IGMP
链路层以太网协议、设备驱动程序和接口卡

IP:网际协议
ICMP:Internet互联网控制报文协议
IGMP:Internet组管理协议
TCP:传输控制协议,高可靠。工作内容:把应用程序交给他的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟。应用层可以忽略这些细节。采用超时重传、发送和接收端到端确认分组机制。
UDP:用户数据报协议:只是把乘坐数据报的分组从一台主机发送到另一台主机,但并不保证该数据能到达另一端,任何必须的可靠性必须有应用层来提供。
Telnet:远程登录。
FTP:文件传输协议。
SMTP:简单邮件传送协议。
SNMP:简单网络管理协议。

在这里插入图片描述

1.3 TCP/IP的分层

DNS:Domain Name System,为域名系统
IFTP:简单文件传送协议
BOOTP:引导程序协议
IGMP:Internet组管理协议
ARP:地址解析协议
RARP:逆地址解析协议
在这里插入图片描述

1.4互联网的地址

点分十进制表示法:32位的地址通常写成四个十进制的数,其中每个证书对应一个字节。

类型范围
A0.0.0.0 到 127.255.255.255
B128.0.0.0 到 192.255.255.255
C192.0.0.0 到 223.255.255.255
D224.0.0.0 到 239.255.255.255
D240.0.0.0 到 247.255.255.255

在这里插入图片描述
单播地址:目的为单个主机
广播地址:目的端为给定网络上的所有主机
多播地址:目的端为同一组内的所有主机

1.5 域名系统

域名系统是一个分布的数据库,由它来提供IP地址主机名之间的映射信息。

1.6 封装

在这里插入图片描述
协议域:IP在首部中存入一个长度为8bit的数值成为协议域。1表示ICMP协议,2表示IGMP协议,6表示TCP协议,17表示UDP协议。
类型域:类似协议域,以太网的帧首部也有一个16bit的帧类型域。

1.7 分用

当目的主机收到以太网数据帧时,数据就开始由协议栈中由底向上升,同时去掉各协议加上的报文首部
在这里插入图片描述
协议ICMP和IGMP定位一直是很棘手,把它们与IP放在同一层上,那是因为事实上他们是IP的附属协议。又把它们放在IP层面上,因为ICMP和IGMP报文都被封装在IP数据报中。
ARP和RARP都有各自的以太网数据帧类型,和IP数据报一样。又可以把ARP作为以太网设备驱动程序的一部分,放在IP层下面是合理的。

1.8 客户-服务器模型

重复型服务器交互步骤:
I1.等待一个客户请求的到来
I2.处理客户请求。
I3.发送响应给发送请求的客户。
I4.发挥I1步
重复型服务i其主要问题发生在I2状态,这个时候它不能为其他客户机提供服务。

并发型服务器交互步骤
C1.等待一个客户请求的到来。
C2.启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。
C3.返回C1。

一般来说,TCP服务器是并发的,UDP服务器是重复的。

1.9 端口号

知名端口号:TCP/IP实现来说,FTP的TCP端口号是21,Telnet的TCP端口号是23,TFTP的UDP端口号是69。任何TCP/IP实现所提供的服务都用知名1~1023之间的端口号。
知名端口号介于1到255之间,256到1023之间的端口号通常是由Unix系统占用,IANA分配机构管理1~1023之间所有的端口号。
Telnet 23端口,采用TCP/IP标准
Rlogin 513端口 Unix系统设计
查看Telnet服务器和域名系统的端口号,可以使用下面的命令

grep telnet /etc/services
grep domain /etc/services

1.10 标准化过程

由四个小组控制以及拟定标准TCP/IP协议族。
1)Internet协会(ISOC,Internet Society)
2)Internet体系结构委员会(IBA,Internet Architecture Board)
3)Internet工程专门小组(IETF,Internet Engineering Task Force)
子组织Internet工程指导小组(IESG,Internet Engineering Steering Group)
4)Internet妍就专门小组(IRTF,Internet Research Task Force)
IRTF和IETF都隶属于IBA。文献[Crocker 1993]提供相加详细的Internet内部标准化进程。

1.11 RFC

所有关于Internet的正式标准都以RFC(Request for Comment)文档出版。
获取RFC方式:
电子邮件:(尝试过,没有用)

To:rfc-info@ISI.EDU
Subject:getting rfcs
help:ways_to_get_rfcs

FTP从Internet上获取
推荐 https://ftp.sjtu.edu.cn/pub/rfc/

相关文章:

TCP-IP详解卷一:协议——阅读总结

该内容适合程序员查看 第1章 概述 1.1 引言 WAN全称是 Wide Area Network,中文名为广域网。 LAN全称是 Local Area Network,中文名为局域网。 1.2分层 ICP/IP协议族通常被认为是一个四层协议系统 分层协议应用层Telnet、FTP和e-mail运输层TCP和UDP网…...

【带源码】如何开发一个视频打赏,付费观看视频的系统?

【带源码】如何开发一个视频打赏,付费观看视频的系统?开发指南来了 最近非常火爆的视频打赏系统,有用户端,管理端,代理端 风口来了,系统部署简单,需要详细部署教程的可以留下评论哦&#xff01…...

Linux--进程的概念(一)

目录 一、冯诺依曼体系结构二、操作系统2.1 什么是操作系统2.2 操作系统的意义 三、进程3.1 进程的基本概念3.2 描述进程——PCB3.3 进程和程序的区别3.4 task_struct-PCB的一种3.5 task_struct的内容分类 四、如何查看进程4.1 通过系统文件查看进程4.2 通过ps指令查看进程 五、…...

大话设计模式——15.观察者模式(Observer Pattern)

简介 也称发布订阅模式(Publish/Subscribe),定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新 UML图: 应用场景: 消息通知组件&#x…...

MySQL 主从复制部署(8.0)

什么是主从数据库 主从数据库是一种数据库架构模式,通常用于提高数据库的性能、可用性和可伸缩性。 它包括两种类型的数据库服务器: 1)主数据库(Master):主数据库是读写数据的主要数据库服务器。所有写操…...

大话设计模式——16.命令模式(Command Pattern)

简介 请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的对象进行执行。命令模式是一种特殊的策略模式,体现多个策略执行的问题,而不是选择的问题 UML图 应用场景 界面选择、键盘、按钮、事件操作都类似命令模式 …...

react17+18 中 setState是同步还是异步更新

在类组件中使用setState,在函数式组件中使用hooks的useState。 setstate目录 1. 类组件1.1 react 17版本1.2 react 18版本 2、函数式组件 1. 类组件 1.1 react 17版本 参考内容:第十一篇:setState 到底是同步的,还是异步的&…...

Unity框架,ET框架8.1版本的打包流程记录

目录 打包代码前置1.必须要安装Visusal Studio 2022的组件,如下图,必须都要进行安装,不然会在代码重构的时候报错,丢失SDK。Rider的版本必须2023及以上 步骤一、使用Rider编辑器打开项目后进行重构项目步骤二、使用HybirdCLR生成A…...

windows访问wsl中的docker

1、启动windows路由转发功能&#xff1a; 找到任务管理器 --》服务–》打开服务–》 ROUTing and Remote Access 2、关闭wsl中linux的防火墙 3、查看docker系统和linux系统的ip和网关 以下面为例 # docker系统 eth0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu…...

golang主要优缺点

优点 1&#xff09;采用协程机制&#xff0c;可以很方便的支持高并发&#xff0c;性能还不错。 2&#xff09;非常易于使用&#xff0c;产出效率很高。 缺点 也是协程机制。程序中一切皆协程&#xff0c;并且自己做了协程调度机制&#xff0c;而不是传统的 线程机制。导致需…...

浅谈Redis和一些指令

浅浅谈一谈Redis的客户端 Redis客户端 Redis也是一个客户端/服务端结构的程序。 MySQL也是一个客户端/服务端结构的程序。 Redis的客户端也有多种形态 1.自带命令行客户端 redis-cli 2.图形化界面的客户端&#xff08;桌面程序&#xff0c;web程序&#xff09; 像这样的图形…...

AI大模型探索之路-应用篇1:Langchain框架概述—快速构建大模型应用

目录 一、什么是LangChain&#xff1f; 二、LangChain解决了哪些问题&#xff1f; 三、LangChain总体架构 四、代码实践样例 总结 一、什么是LangChain&#xff1f; 为大模型应用提供简便之道。 LangChain&#xff0c;专为构建庞大的语言模型应用程序设计的框架&#xff0…...

Google Chrome 常用设置

Google Chrome 常用设置 References 转至网页顶部 快捷键&#xff1a;Home 转至内容设置 chrome://settings/content 清除浏览数据 历史记录 -> 清除浏览数据 关于 Chrome 设置 -> 关于 Chrome chrome://settings/help References [1] Yongqiang Cheng, https:/…...

如何提高旋转花键运行稳定性?

现代化精密仪器设备中&#xff0c;精密仪器的稳定工作性能对于生产效率和产品质量至关重要&#xff0c;运行效率和精度是常见问题。旋转花键作为机械传动系统中的重要组成部分&#xff0c;其稳定性也是直接影响到机械装配的质量和使用寿命&#xff0c;那么我们应该如何提升旋转…...

每日一题 第八十七期 洛谷 [蓝桥杯 2018 省 AB] 全球变暖

[蓝桥杯 2018 省 AB] 全球变暖 题目描述 你有一张某海域 N N N \times N NN 像素的照片&#xff0c;. 表示海洋、 # 表示陆地&#xff0c;如下所示&#xff1a; ....... .##.... .##.... ....##. ..####. ...###. .......其中 “上下左右” 四个方向上连在一起的一片陆地组…...

AI技术创业有哪些机会?

文章目录 ✍探索AI技术创业的机会与挑战&#x1f48e;引言&#x1f48e;AI技术的快速发展与应用&#x1f48e;&#x1f339;AI技术创业的机会与方向&#x1f339;1. 行业解决方案&#x1f339;2. 智能产品和服务&#x1f339;3. 教育和培训 &#x1f48e;AI技术创业的挑战与应对…...

TensorFlow学习之:基础概念和操作

TensorFlow简介 TensorFlow是一个开源的深度学习框架&#xff0c;由Google的研究团队Google Brain Team开发&#xff0c;并在2015年发布。它是基于DistBelief&#xff0c;Google之前的一个深度学习项目&#xff0c;但被重新设计以便更灵活、更强大、更适应于研究和生产。 历史…...

最新在线工具箱网站系统源码

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 系统内置高达72种站长工具、开发工具、娱乐工具等功能。此系统支持本地调用API&#xff0c;同时还自带免费API接口&#xff0c; 是一个多功能性工具程序&#xff0c;支持后台管理、上…...

c# InvokeRequested delegate解决线程访问界面

说明 界面操作的代码应该写在界面&#xff08;Form/Dialog&#xff09;里 方法定义 private void Method1(string s) {...... }delegate定义 private delegate void Method1Delegate(string s);界面调用代码 private void op(){string sText"hello";if (this.In…...

使用 Web Workers 作为setInterval的替代方案

使用 Web Workers 作为setInterval的替代方案 在 Vue 项目中&#xff0c;为了避免 setInterval 在标签页非激活状态下的不准确问题&#xff0c;我们可以使用 Web Workers 作为一个替代方案 Web Worker 介绍&#xff1a; Web Workers : 浏览器后台为网页运行的一个小助手&…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...

MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用

文章目录 一、背景知识&#xff1a;什么是 B-Tree 和 BTree&#xff1f; B-Tree&#xff08;平衡多路查找树&#xff09; BTree&#xff08;B-Tree 的变种&#xff09; 二、结构对比&#xff1a;一张图看懂 三、为什么 MySQL InnoDB 选择 BTree&#xff1f; 1. 范围查询更快 2…...

【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?

FTP&#xff08;File Transfer Protocol&#xff09;本身是一个基于 TCP 的协议&#xff0c;理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况&#xff0c;主要原因包括&#xff1a; ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...

负载均衡器》》LVS、Nginx、HAproxy 区别

虚拟主机 先4&#xff0c;后7...

电脑桌面太单调,用Python写一个桌面小宠物应用。

下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡&#xff0c;可以响应鼠标点击&#xff0c;并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...