`
草帽当家的
  • 浏览: 24381 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论
阅读更多
        网路协议通常分为不同的层次进行开发,并且每一层都各司其职。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.其他网络上的主机。
八、个人感悟
        书中信息量很大,许多讲解都是图文并茂的,我口述起来显得很吃力,说的也不是很清楚,还有许多自己没解决的问题,毕竟理解上还有很大的不足。
        写总结的时候,总会想着,花了这么长时间总结这些书上都有的东西有意义吗?说不清!
        回过头想想,没意义的事做多了,多一件少一件也就无所谓了!
分享到:
评论

相关推荐

    Java加密与解密的艺术

    我的应用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章 ...

    计算机网络技术基础

    小结  习题1  第2章 数据通信技术  2.1 数据通信的基本概念  2.1.1 信息、数据与信号  2.1.2 模拟信号与数字信号  2.1.3 基带信号与宽带信号  2.1.4 信道及信道的分类  2.1.5 数据通信的技术指标  ...

    嵌入式Linux应用程序开发标准教程(第2版全)

    《嵌入式Linux应用程序开发标准教程(第2版)》主要分为3个部分,包括Linux基础、搭建嵌入式Linux环境和嵌入式Linux的应用开发。Linux基础部分从Linux基础、基本操作命令讲起,为Linux初学者能快速入门...12.4 本章小结

    嵌入式Linux应用程序开发详解

    目录 第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

    IPSEC:新一代因特网安全标准

    7.4 小结 81 第三部分 配置问题 第8章 策略 83 8.1 导引 83 8.2 策略定义的要求 84 8.3 策略的表示与分布 85 8.4 策略管理系统 86 8.4.1 内核支持 86 8.4.2 IKE支持 87 8.5 配置 87 8.6 策略的设置 88 第9章 IPSec的...

    cisco_internetworking_and_troubleshooting.9569975735.zip

    6.5 ISDN 故障诊断与排除小结 复习思考题 第7章 IP(Ⅰ):静态路由RIP、IGRP、 EIGRP 7.1 简介 7.2 TCP/IP诊断命令 7.2.1 Ping和Trace命令 7.2.2 Ping命令 7.2.3 Trace命令 7.2.4 Show 命令 7.2.5 Debug...

    Cisco故障诊断与排除结构化方法.rar

    6.5 ISDN 故障诊断与排除小结 复习思考题 第7章 IP(Ⅰ):静态路由RIP、IGRP、 EIGRP 7.1 简介 7.2 TCP/IP诊断命令 7.2.1 Ping和Trace命令 7.2.2 Ping命令 7.2.3 Trace命令 7.2.4 Show 命令 7.2.5 Debug...

    入门学习Linux常用必会60个命令实例详解doc/txt

    ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它...

    WCDMA KPI监控和优化指导书

    1 概述 17 2 数据采集 19 2.1 概述 19 2.2 RNC实时状态监控 19 2.3 RNC消息跟踪功能 20 2.4 RNC连接性能监测 21 2.5 RNC小区性能监测 21 2.6 RNC链路性能监测 22 2.7 RNC跟踪消息路径 22 ...8.7 章节小结 110

    计算机网络 谢希仁 第五版 习题解答

    由于Internet也使用分层次的体系结构,即TCP/IP网络体系结构,使得凡遵循TCP/IP的各种计算机网络都能相互通信。进入20世纪90年代后,网络进一步向着开放、高速、高性能方向发展。由于Internet还存在着技术和功能上的...

    unity3d手机游戏开发1,2,3,4,8,10章

    小结 ………………………………………………………………………………………… 163 第 C= 与 Web服 努器的交互 … … ¨ ¨ … … … … … … … ¨ … … … … … … … … … 164 61 建立服务器 …¨…¨……...

    计算机网络技术专业课程体系建设方案.doc

    网络通信协议和TCP/",精品课程教" "通信系天津市精品 "IP协议簇;LAN基本工作原理;高速 "学资源建设 " "课程) "和交换LAN;子网规划与划分:路由 " " " "器的相关知识。 " " "网络操作系统使用 "系统讲述Windows ...

    python入门到高级全栈工程师培训 第3期 附课件代码

    03 小结 04 数据的概念 05 进制转换 06 原码补码反码 07 物理层和数据链路层 08 网络层和arp协议 09 传输层和应用层 第2章 01 上节课复习 02 arp协议复习 03 字符编码 第3章 01 网络基础和dos命令 02 为何学习...

Global site tag (gtag.js) - Google Analytics