这几天一直在浏览了tcp ip illustated vol1(后简称illustrated)和internetworking with tcpip vol1,发现曾经学习过的许多关键知识点已经忘的差不多了,有点点惊讶自己的遗忘速度。于是记录一些自己感兴趣的点。
希望能做到,温故而知新。
可能会比较关注这几个协议:
- TCP 这个是最重要的,也是最复杂的,很多思想非常精妙
- IP 重要性仅次于TCP
- SNMP 兴趣点,当时学的时候觉得超级难,现在感觉好简单
- ARP,RIP,OSPF 基础东西还是要看一下
- UDP,FTP,icmp 浏览一下
随意的记录,看到哪就写哪,想到哪就写哪。而且,有的会是错的,因为里面一部分是个人理解。
仅为学习一下。
1.ip
illustated用了如下几个单词来形容:unreliable, connectionless datagram delivery service.
翻译:不可靠的,无连接的数据报服务
illustated分别解释了unreliable与connectionless
但是没有解释数据报服务,记得谢希仁那本书里面有与虚电路相比较详细的比较,背过好几次。
unreliable: best effort service, no guarantee
connecionless: 不会维护状态信息
2.TCP为什么要三次连接?为什么不是两次?
(这部分摘自网络,记得以前仔细想过这个问题,但是现在又忘了,等脑壳清醒了好好想想三次建立连接,四次释放)
我们知道,3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。 现在把三次握手改成仅需要两次握手,死锁是可能发生的。作为例子,考虑计算机A和B之间的通信,假定B给A发送一个连接请求分组,A收到了这个分组,并发送了确认应答分组。按照两次握手的协定,A认为连接已经成功地建立了,可以开始发送数据分组。可是,B在A的应答分组在传输中被丢失的情况下,将不知道A是否已准备好,不知道A建议什么样的序列号,B甚至怀疑A是否收到自己的连接请求分组。在这种情况下,B认为连接还未建立成功,将忽略A发来的任何数据分组,只等待连接确认应答分组。而A在发出的分组超时后,重复发送同样的分组。这样就形成了死锁。
3.TCP TTL字段的作用:娃哈哈。以前上TCPIP被老师问过,记忆深刻。简单说,就是防止死循环了。比如说,当路由器瘫痪或者两个路由器之间的连接丢失时,路由协议有时会去检测丢失的路由并一直进行下去。在这段时间内,数据报可能在循环回路被终止。TTL字段就是在这些循环传递的数据报上加上一个生存上限。
4.Traceroute 要注意的问题(见tcpip详解中文版):第一.并不能保证现在的路由也是
将来所要采用的路由,甚至两份连续的I P数据报都可能采用不同的路由。如果在运行程序时,路由发生改变,就会观察到这种变化,这是因为对于一个给定的TTL,如果其路由发生变化,Traceroute 程序将打印出新的IP地址。
第二,不能保证ICMP报文的路由与Traceroute 程序发送的UDP数据报采用同一路由。
这表明所打印出来的往返时间可能并不能真正体现数据报发出和返回的时间差(如果UDP数
据报从信源到路由器的时间是1秒,而ICMP报文用另一条路由返回信源用了3秒时间,则打印
出来的往返时间是4秒)。
第三,返回的ICMP报文中的信源I P地址是U D P数据报到达的路由器接口的I P地址。这与
I P记录路由选项(7.3节)不同,记录的I P地址指的是发送接口地址。由于每个定义的路由器都有2个或更多的接口,因此,从A主机到B主机上运行Traceroute 程序和从B主机到A主机上运行Traceroute 程序所得到的结果可能是不同的。
5.TCP计时器:四个,重传计时器,keep alive计时器,坚持计时器与时间等待计时器
- 重传计时器 报文丢失 要设置超时时间,重传报文
- keep alive计时器:过一个时间段探测tcp连接是否有效
- 坚持计时器:流量控制中的0窗口大小通报
- 时间等待计时器:关闭连接
6.在对 ICMP 差错报文进行响应时,永远不会生成另一份 ICMP 差错报文,why?原因同上,避免死循环:如果没有这个限制规则,可能会遇到一个差错产生另一个差错的情况,而差错再产生差错,这样会无休止地循环下去。另外,在发生拥塞时,差错报文本身会加剧网络的拥塞情况。
PS:ICMP 报文使用 IP 发送数据,但并不把它看成是高层协议,它是 IP 的一个必要部分。用 IP 传递 ICMP报文的原因是可能需要经过几个物理网路才能到达其最终目的地,因此不能仅用物理传送来投递它们
7.引入icmp原因:ip不提供出错信息,网络中存在差错,ip不提供可靠性保证
8.tcp拥塞控制策略:慢启动,加速递减。当发生报文丢失时,立即将拥塞窗口大小减半,对于发送窗口中的数据,重传计时器时限加倍。在启动新连接或者拥塞之后增加通讯量时,仅以一个报文段作为拥塞窗口的初始值,每当收到一个确认,则将拥塞窗口加1。尾部丢弃与随机早期丢弃:尾部丢弃可能会导致全局同步。连续的数据来源于不同的站点,尾部丢弃策略可能
使得路由器丢弃来自n个连接的一个报文段,这将使tcp的n个实例同时进入慢启动状态。RED则会避免这种情况。
顺便贴下两个连接:
http://hi.baidu.com/layer7/blog/item/cb1243166bd6f11c962b430f.html
http://hi.baidu.com/layer7/blog/item/b140a79bdef70db1c8eaf422.html
分享到:
相关推荐
tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议tcp/ip协议...
Windows 环境下 TCP/IP 协议的配置和诊断 本资源摘要信息主要涉及到 Windows 环境下的 TCP/IP 协议配置和诊断。该资源包括了 TCP/IP 协议的配置、 Ping 命令工具的使用、Ipconfig 工具的使用等内容。 知识点一:...
TCP/IP 协议在 Windows 环境下的配置和诊断 本文主要讲述了在 Windows 环境下 TCP/IP 协议的配置和诊断,包括网络配置、TCP/IP 协议配置、Ping 命令工具的使用、Ipconfig 工具的使用等内容。 一、网络配置 在 ...
1. **链路层**:在Microchip的TCP/IP协议栈中,这一层可能包括了如Ethernet、PPP(点对点协议)等,它们负责物理网络接口的通信和数据帧的封装。 2. **网络层**:IP协议在此层起核心作用,负责数据包的路由和传递。...
TCP/IP协议栈及其各个层次的内容 TCP/IP协议栈是一个复杂的网络协议栈,它由四个层次组成:网络层、传输层、高层和应用层。每个层次都有其特定的功能和协议。 网络层 网络层是TCP/IP协议栈的第三层,也是OSI参考...
本文对 TCP/IP 协议进行了详细的分析,并对 FTP 协议进行了实验,通过对 FTP 协议的分析和实验,了解了 TCP/IP 协议在文件传输中的应用。 一、TCP/IP 协议简介 TCP/IP 协议是计算机网络的通信协议的基础,包括两种...
TCP/IP协议族是互联网通信的基础,它是一组协议的集合,包括了网络接口层、网际层、传输层以及应用层等多个层次。这份"TCP/IP协议族(第四版)习题答案"涵盖了这个领域的核心概念和实践应用,对于学习者来说,是一个...
基于TCP/IP协议的Socket编程 TCP/IP协议是网络通信协议的基础,它规定了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据传输格式以及传送方式。TCP/IP协议的基本传输单位是数据包(datagram),TCP...
1. **TCP/IP协议模型**:TCP/IP模型通常被分为四层或五层,包括应用层、传输层、网络层、数据链路层和物理层。STM32中的TCP/IP协议栈实现了这些层的功能,例如应用层的HTTP、FTP等服务,传输层的TCP和UDP协议,网络...
1. **安装/卸载TCP/IP协议** - 在Windows系统中安装或卸载TCP/IP协议的具体步骤。 2. **查看TCP/IP配置信息** - 如何使用图形界面或命令行工具查看TCP/IP配置信息。 3. **配置TCP/IP配置信息** - 包括IP地址、...
### 对以太网全硬件TCP/IP协议栈的简单认识 #### 一、OSI七层结构模型概述 在深入探讨以太网全硬件TCP/IP协议栈之前,我们首先需要了解网络通信的基础——OSI(Open System Interconnect)七层模型。这一模型由...
1. **应用层**:这是TCP/IP协议族的最高层,直接与用户的应用程序打交道。常见的应用层协议有HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)和DNS(域名系统)等,它们为用户提供各种网络...
"tcp/ip协议实验" tcp/ip协议实验是计算机网络领域中的一项重要实验,旨在让学生和从业者深入了解tcp/ip协议的原理和实现。下面是实验的详细介绍: 实验一 以太网数据帧的构成 以太网数据帧是tcp/ip协议中最基本的...
《TCP/IP协议族》由编程与网络权威专家BehrouzA.Forouzan撰写,是一本关于TCP/IP协议族的经典教材《TCP/IP协议族》图文并茂,重点概念突出。除了讲解一些基本概念和底层技术外,还介绍了TCP/IP协议族中的核心协议IP...
TCP/IP协议是互联网通信的基础,它定义了网络设备如何互相连接并交换数据。这个协议族由多个层次组成,包括应用层、传输层、网络层和数据链路层,每个层都负责不同的通信任务。 《TCP/IP协议详解》这套书籍分为三卷...
TCP/IP协议是互联网的核心协议,它定义了网络设备如何交换数据以及数据如何被格式化以进行传输。这个学习资料包,以PPT的形式,旨在帮助理解TCP/IP协议的工作原理及其在实际应用中的运用。 首先,TCP(Transmission...
1. TCP/IP协议的定义 TCP/IP协议是供已连接因特网的计算机进行通信的通信协议。TCP/IP指传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol)。TCP/IP定义了电子设备(比如计算机)如何连入...
TCP/IP协议是互联网的核心协议,它定义了网络设备如何交换信息。本文主要涵盖了TCP/IP协议的基础知识,包括计算机网络体系结构的分层、TCP/IP协议的含义及其组件、数据包的构成、数据处理流程等内容。 计算机网络...
《TCP/IP详解 卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15 000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。本书不仅说明了插口API和协议族的关系以及主机...
TCP/IP协议是一种用于网络通信的协议族,它不是单一的协议,而是一系列协议的集合,涵盖了从底层的数据链路层到应用层的不同层面。了解TCP/IP协议对于计算机网络通信和应用开发是基础且关键的知识点。 首先,需要...