第1章 什么是TCP-IP

什么是网络

网络是计算机或类似计算机的设备之间通过常用传输介质进行通信的集合。通常情况下,传输介质是绝缘的金属导线,
它用来在计算机之间携带电脉冲,介质也可以是电话线,甚至没有线路。网络协议就是一套通用规则,用来帮助定义复杂数据传输的过程。

什么是tcp/ip

tcp/ip定义了网络通信过程数据单元的格式和内容,以便接收计算机能够正确解释接收到的消息。其构成了一套在TCP/IP网络中如何处理、传输和接收数据的完整系统。TCP/IP标准定义了网络通信的规则

关于TCP/IP标准和TCP/IP实现

确定TCP/IP传输格式和过程的实际行为是由厂商的TCP/IP软件实现的。例如,WINDOW 中的TCP/IP软件使得安装了windows的计算机可以处理TCP/IP格式的数据,并参与到TCP/IP网络中。
TCP/IP实现的是一个软件组件,计算机通过它参与到TCP/IP网络中。
后面经常会讨论到为其他层提供服务的TCP/IP模型的分层,实际上,不是TCP/IP模型提供服务,它只是定义了其应该提供的服务,而真正提供这些服务的则是实现了TCP/IP的厂商软件。

历史

20世纪60年代末期,美国国防部开始注意到军队购置了大量而且型号不同的计算机。有些计算机不能联网,而有些计算机利用一些不兼容的专属协议就可以编组到一个小型的网络中。国防部的官员开始考虑是否可以利用这些分散的计算机来共享信息。这些官员创建了一个网络,命名为ARPAnet。

一开始多个用户通过终端的文本屏幕界面设备连接到一台计算机中。实际上他们访问的是同一台计算机,而这一台计算机只需要一条Internet连接来向一大组用户提供服务。

在个人计算机的早期开始使用modem拨号连接,它是通过一条电话线提供网络连接的。但用户还希望能够与办公室的其他计算机连接,已达到共享文件的目的。为了满足这一需求,局域网(LAN)这一网络概念登上舞台。早期的LAN协议不提供internet连接,而且是围绕着专有的协议系统来设计的。用户要么不使用internet,要么通过拔号线路单独连接internet。随着internet服务提供商数量的增加,各个公司开始考虑采用一种永久的连接方式。tcp/ip由此诞生了

TCP/IP的核心

  • 逻辑编址

    • 网络适配器有一个唯一的物理地址,当适配器刚出厂的时候,通过会为其分配个物理地址。在LAN中,++低层的与硬件相关的协议++使用适配器的++物理地址++在物理网络中传输数据。在大型的网络中,每个网络适配器不能监听所有的信息(想象一下你的计算机监听传输的所有数据)。网络管理员使用路由器将网络分段,减少网络的堵塞。在路由式网络中,管理员需要一种细分网络到更小的子网的方法。TCP/IP通过++逻辑编址++提供了这样的子网化能力。在TCP/IP中,计算机的逻辑地址称为IP地址。在TCP/IP中,逻辑地址与具体硬件的物理地址之间的转换是使用地址解析协议(ARP)和逆向地址解析协议实现的(RARP)
  • 路由选择
    • 路由器是一种特殊的设备,能够读取++逻辑地址信息++,并将数据通过网络直接传送到它的目的地。最简单的应用是,路由器将一个局域子网从较大的网络中分离出去。在局域网中,数据传输到另一台计算机时,不用经过路由器,因此不会给大型网络的传输线路带来负担。如果数据要传送到子网以外的计算机上,路由器将负责转发数据。
  • 名称解析
    • 人们在记忆ip地址时会觉得十分麻烦,因此TCP/IP提供了IP地址的另外一种结构。这种结构称为++域名或域名系统(DNS)++。域名到IP地址的映射称为名称解析
  • 错误控制和流量控制
    • tcp/ip协议组提供了确保数据在网络中可靠传送的特性。这些特性包括检查数据的传输错误和确认成功接收到网络信息
  • 应用支持
    • 同一台计算机上可以运行多种网络应用程序。协议软件必须提供某些方法来判断接收到的数据属于哪个应用程序。在TCP/IP中,这个通过系统的逻辑通道实现从网络到应用程序的接口被称为端口。每个端口都有一个用于识别端口的数字

什么是RFC

提供有关TCP/IP或Internet信息的官方技术文档。可以在网络的多个地方找到RFC

第1章 什么是TCP-IP的更多相关文章

  1. <<网络是怎样连接的>>笔记第2章用电信号传输Tcp/ip数据

    创建套接字: 协议栈的内部结构.套接字的实体,以及创建套接字的操作过程 连接服务器: “连接”具体是进行怎样的操作,在这个过程中协议栈到底是如何工作的, 以及客户端和服务器是如何进行交互的. 收发数据 ...

  2. 第一章 概述——1.TCP/IP设计遵循的两个原则

    1.端到端原则(end-to-end principle) 当我们设计一个大的系统(如操作系统或协议族)时,随之而来的一个问题通常是在什么位置实现某个功能.影响TCP/IP协议族设计的一个重要原则是端 ...

  3. 网络操作系统 第七章 管理TCP/IP网络

    本章小结 本章介绍了TCP/IP的相关概念,并且在此处基础上,介绍了Windows Server 2008中使用TCP/IP网络配置工具实现网络连接和管理的方法,在Linux系统中,讲解了是如何使用图 ...

  4. 《TCP/IP详解 卷1:协议》第3章 IP:网际协议

    3.1 引言 IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输(见图1-4).许多刚开始接触TCP/IP的人对IP提供不可靠.无连接的数据报 ...

  5. 第一章 了解TCP/IP协议族

    第一章 了解TCP/IP协议族 1.1 TCP/IP协议族体系结构以及主要协议 IP和TCP协议对编写程序具有最直接的影响,后面的章节会详细的讲到. TCP/IP的体系结构有应用层,传输层,网络层,数 ...

  6. 《TCP/IP详解 卷1:协议》第4章 ARP:地址解析协议

    4.1 引言 本章我们要讨论的问题是只对TCP/IP协议簇有意义的IP地址.数据链路如以太网或令牌环网都有自己的寻址机制(常常为48 bit地址),这是使用数据链路的任何网络层都必须遵从的.一个网络如 ...

  7. tcp/ip详解 卷1 -- 协议概述

    第一章 概述 分层 TCP/IP 通常被认为是一个四层协议系统. 每一层负责不同的功能. 链路层, 也成为数据链路层或者网络接口层. 通常包括 操作系统中的设备驱动程序和计算机中对应的网络接口卡. 主 ...

  8. 《TCP/IP详解 卷1:协议》系列分享专栏

    <TCP/IP详解卷1:协议>是一本详细的TCP/IP协议指南,计算机网络历久不衰的经典著作之一. 作者理论联系实际,使读者可以轻松掌握TCP/IP的知识.阅读对象为计算机专业学生.教师以 ...

  9. 图解TCP/IP→第2章基础知识

    ####TCP.IP背景**关键词:ARPANET,UNIX,分组交换技术,*ARPANET(阿帕网),也是全球互联网的鼻祖.阿帕网的成功也充分证明了基于分组交换技术的通信方法的可行性.*20世纪70 ...

  10. CCNA第三章子网划分,变长子网掩码(VLSM)和TCP/IP排错考试要点学习笔记

    1. 子网划分的好处      缩减网络流量; 优化网络性能; 简化管理; 可以更为灵活地形成大覆盖范围的网络.    2. 如何创建子网的步骤 首先,确认所需要的网络ID数; 其次,确认每个子网中所 ...

随机推荐

  1. C# Redis实战(五)

    五.删除数据 在C# Redis实战(四)中讲述了如何在Redis中写入key-value型数据,本篇将讲述如何删除Redis中数据. 1.void Delete(T entity);删除函数的运用 ...

  2. 关于new,delete,malloc,free的一些总结

    首先,new,delete都是c++的关键字并不是函数,通过特定的语法组成表达式,new可以在编译的时候确定其返回值.可以直接使用string *p=new string("asdfgh&q ...

  3. 学习 CosmosDB (NoSql)

    Microsoft Azure官网 学习cosmos DB,也称作 documentDB,NoSql,不是关系型数据库,数据以Json的格式存储,灵活性强. 1.DLL 2.Connector set ...

  4. /VAR/LOG/各个日志文件分析

     /VAR/LOG/各个日志文件分析 author:headsen  chen    2017-10-24   18:00:24 部分内容取自网上搜索,部分内容为自己整理的,特此声明. 1.   /v ...

  5. C语言switch/case圈复杂度优化重构

    软件重构是改善代码可读性.可扩展性.可维护性等目的的常见技术手段.圈复杂度作为一项软件质量度量指标,能从一定程度上反映这些内部质量需求(当然并不是全部),所以圈复杂度往往被很多项目采用作为软件质量的度 ...

  6. Git分支(3/5) -- 禁用 Fast Forward 合并

    添加一个分支, 并且换到该分支: git checkout -b add-text 然后我再index.html里面添加点文字, 并commit. 然后再修改README.md, 添加文字, comm ...

  7. 【转载】Perl中的引用

    为什么使用引用? 在perl4中,hash表中的value字段只能是scalar,而不能是list,这对于有些情况是很不方便的,比如有下面的数据: Chicago, USAFrankfurt, Ger ...

  8. mybatis动态insert,update

    1. 动态update UPDATE ui.user_question_section_xref <set> reviewer = #{0}, score = #{1} , last_up ...

  9. [模拟赛] T1 无线通讯网

    Description 国防部计划用无线网络连接若干个边防哨所.2种不同的通讯技术用来搭建无线网络: 每个边防哨所都要配备无线电收发器:有一些哨所还可以增配卫星电话. 任意两个配备了一条卫星电话线路的 ...

  10. 笔记:Maven 反应堆

    在一个多模块的Maven项目中,反应堆(Reactor)是指所有模块组成的一个构建结构,对于单个模块的项目,反应堆就是该模块本身,但对于多模块项目来说,反应堆就包含了各模块之间继承与依赖的关系,从而能 ...