`
- 浏览:
25081 次
- 性别:
- 来自:
长沙
-
网路协议通常分为不同的层次进行开发,并且每一层都各司其职。TCP/IP是一个四层协议系统,从处理硬件连接的底层协议向上依次是:链路层(设备驱动程序..)——网络层(IP..)——运输层(TCP\UDP)——应用层(应用程序)。
一、独立的协议层
我们在操作应用程序的时候,跟本就没关心过底层的通信,也许网络层的结构在不断的变化(路由器增加),但这对我们没有丝毫影响,这是因为每一层协议都封闭了内部的信息处理,与其他层只有处理后的信息交互——"这种物理细节的隐蔽使得互联网的功能非常强大"。
二、封装与分用
数据最终是以帧(封装在一起的bit)的方式在底层传输的(以太网传输的比特流,长度为46-1500个字节)。当应用程序用TCP传输数据时,对数据进行封装是必须的,就好比我们制定的字节流协议一样,必须有自己的规范才能得到正确的解析,毕竟对数据操作是包装与解析的过程!
TCP/IP是逐层进行封装的,每一层都会加入信息首部,以太网、IP的首部会加入某种标识符,以表明数据属于哪一层,我们创建服务器的16bit端口号会加入TCP、UDP首部,对应用程序进行标记。分用就是将封装的信息解析的过程。
三、环回接口
当服务器与客户端在同一台主机上创建时,如果信息还要经过封装与分用的过程,才能到达应用程序,这肯定是一种不合理的设计。当然,环回接口简化了这个问题,大多数操作系统把IP地址127.0.0.1(localhost!!)分配给这个接口,环回接口可以被看作是网络层下面的链路层,网络把一份数据传递给环回接口,环回接口直接把它返回到IP输入队列,简化了流程!
四、IP简介
IP是TCP/IP中协议族中最为核心的协议,它提供一种不可靠的、无连接的服务。IP首部的定义很复杂,暂时只能大概的了解一下。
不可靠:它不能保证IP数据报能成功到达目的地。IP仅提供最好的传输服务,当传输发生错误时,IP会丢弃该数据报,然后发送ICMP(Internet互联网控制报文协议:IP层用它来与其他主机或路由器交换报文和其他重要信息)给信源端。
无连接:每个数据的处理是相互独立的。如果信源向相同的信宿发送两个连续的数据报(先A后B),每个数据可能选择不同的路线独立的进行路由选择,因此B可能先到达。
五、IP路由选择
如果目的主机与源主机直接相连或都在一个共享网络上,那么IP数据报就直接送到目的主机上。否则,主机把数据报发送往某一默认路由器上,由路由器来转发数据。
默认路由器都储存在路由表上,路由表包含:目的IP地址、下一站路由器的IP地址、标志、为数据报的传输指定一个网络接口。
路由表上只提供下一站的路由器IP地址,并没有提供完整路径,所以IP路由选择是逐条地进行的,它假定下一站路由器更接近目的地,且下一站路由器与该主机是相连的。
六、子网寻址
IP地址分为A、B、C、D、E五类,长32bit,用点分十进制表示法表示,根据第一个十进制整数判断IP地址属于哪一类,例如:169.254.177.86,这是一个B类地址。
以前的IP地址是由网络号和主机号组成的,由于A类和B类的的主机号被分配了太多的空间(分别是24bit和16bit),而在一个网路中并不会安排这么多主机。所以又重新对主机号进行了划分,如B类地址:网络号(16bit)+子网号(8bit)+主机号(8bit)
一个网络中地址可以包含若干个子网,每个子网又包含若干个主机,这样一来,在IP路由时对于这种网络只需要一个路由表目。因此子网划分缩减了路由表的规模。
七、子网掩码
我们在命令行输入ipconfig时,IP地址下面总会有个子网掩码(225.225.225.0)。由于IP地址在划分的时候,子网号和主机号并没有一个统一的规范,子网掩码对它们进行了区分。子网掩码是一个32bit的值,以点分十六进制法表示,网络号与子网号每一个bit位都为一,主机都为零。
给定IP地址和子网掩码之后,主机就可以确定IP数据报的目的是:1.本子网上的主机 2.本网络中其他子网中的主机 3.其他网络上的主机。
八、个人感悟
书中信息量很大,许多讲解都是图文并茂的,我口述起来显得很吃力,说的也不是很清楚,还有许多自己没解决的问题,毕竟理解上还有很大的不足。
写总结的时候,总会想着,花了这么长时间总结这些书上都有的东西有意义吗?说不清!
回过头想想,没意义的事做多了,多一件少一件也就无所谓了!
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
#### 小结 TCP/IP四次挥手是连接关闭过程中的关键环节,确保了数据传输的安全性和可靠性。通过对四次挥手的每一步进行详细分析,我们不仅可以更好地理解TCP/IP的工作原理,还能在实际开发过程中有效地处理网络通信...
课程结束后的小结强调了网络规划的重要性,列举了组建小型局域网所需的硬件,以及正确设置TCP/IP属性和测试运行的必要性。反思部分指出,尽管学生在理论和实践上都有所提高,但在路由器配置和服务器设置上仍存在问题...
首先,关于计算机网络的代际发展,提到“第( )代计算机网络是国际标准化网络”,这指的是第三代计算机网络,这一阶段网络开始采用国际标准,如TCP/IP协议栈。 其次,链路层和路由选择的关系被提及。链路层主要...
#### 小结 本文档详细阐述了FANUC机器人和Cognex相机之间的通讯及连接过程,重点介绍了通过Ethernet/IP协议实现的数据传输机制,以及机器人如何根据接收到的工件位置数据进行偏移运动。此外,还包括了硬件连接方式...
课后小结是巩固学习成果的关键环节,确保学生能够掌握网络基础知识,理解网络拓扑结构,以及TCP/IP协议在网络中的核心作用。通过这种方式,学生不仅能理论联系实际,还能为后续电子商务相关的课程打下坚实的基础。
我的应用1.2.1 安全技术目标1.2.2 OSI安全体系结构1.2.3 TCP/IP安全体系结构1.3 捍卫企业应用安全的银弹1.3.1 密码学在安全领域中的身影1.3.2 密码学与Java EE1.4 为你的企业应用上把锁1.5 小结第2章 ...
设计论文要求包括对Winsock等网络编程技术的分析,协议体系结构的描述,程序流程图,开发环境的选择,源程序的编译,软件测试文档的编写,以及设计小结。 整个FTP课程设计不仅是一个编程项目,也是一个综合性的学习...
【大学计算机基础】是大学阶段的基础课程,涵盖了计算机科学的核心概念。这份试卷主要测试学生对以下知识点的理解: 1. **操作系统功能**:操作系统是管理计算机硬件和软件资源的软件,选项A正确。它负责调度任务、...
4. 网络层:将 TCP 包裹包进 IP 封包内,再给予一个 IP 表头(主要就是来源与目标的 IP 啰),向链结层丢去; 5. 链结层:如果使用以太网络时,此时 IP 会依据 CSMA/CD 的标准,包裹到 MAC 讯框中,并给予 MAC 表头...
12. 课程阶段性小结期中考试 13. 帧中继概述 重点:帧中继特点 14. 访问控制列表 重点:ACL 功能与配置 15. 网络地址转换 重点:NAT 的概述与功能 考核和成绩评定: 总成绩=平时成绩+期中考试+期末考试 平时成绩=...
《嵌入式Linux应用程序开发标准教程(第2版)》主要分为3个部分,包括Linux基础、搭建嵌入式Linux环境和嵌入式Linux的应用开发。Linux基础部分从Linux基础、基本操作命令讲起,为Linux初学者能快速入门...12.4 本章小结
目录 第1章 Linux快速入门 1 1.1 嵌入式Linux基础 1 1.1.1 Linux发展概述 1 1.1.2 Linux作为嵌入式操作系统的优势 2 1.1.3 Linux发行版本 3 ...1.1.4 如何学习Linux 4 ...本章小结 428
在电路交换与分组交换的比较中,分组交换在一定条件下(如长报文传输、较少的结点数)可能具有更小的时延。而在优化分组交换网络时,为了达到最小时延,分组的数据部分长度p应满足一定的数学关系。 因特网由边缘...
* 软件测试阶段小结和软件测试分类 七、软件测试文档 * 软件需求、测试需求和需求评审 * 测试大纲和测试方案 * 测试总结内容和测试总结模板 * 测试文档和测试总结评审 八、软件测试经历汇总 * 软件测试原则和...
本文将基于“状态机的亲身经验小结”这一主题,深入探讨状态机的设计、实现以及在实际项目中的应用。 首先,状态机可以分为有限状态机(FSM,Finite State Machine)和有向图状态机(Mealy和Moore机)。在FSM中,每...
#### 小结 通过以上详细的分析,我们可以清楚地看到TCP三次握手的过程。第一次握手由客户端发起,向服务器发送SYN报文;第二次握手由服务器回应,发送SYN+ACK报文;第三次握手则是客户端发送ACK报文确认连接建立。...