zoukankan      html  css  js  c++  java
  • 计算机网络中的TCP/IP模型

    Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。

    TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议的每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。

    第一个疑问:TCP/IP参考模型到底是四层还是五层?

    标准的是四层:应用层、传输层、网络层、网络接口层。但是网络接口层并没有严格的划分。所以有时候也有人把网络接口层拆分成两层:数据链路层、物理层。

    当然可能各个地方叫法不同,也有把网络层叫做互联网层。把网络接口层叫做网络访问层。

    关于四层、五层、七层模型的大致对应关系如下:

    这里写图片描述

    第二个疑问:TCP/IP 只指TCP协议 + IP协议么?

    TCP/IP协议不是TCP和IP这两个协议的合称,而是指因特网整个TCP/IP协议族。TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。

    应用层(Application Layer)

    应用层(Application Layer)包含所有的高层协议,包括:虚拟终端协议(TELNET,TELecommunications NETwork)、文件传输协议(FTP,File Transfer Protocol)、电子邮件传输协议(SMTP,Simple Mail Transfer Protocol)、域名服务(DNS,Domain Name Service)、网上新闻传输协议(NNTP,Net News Transfer Protocol)和超文本传送协议(HTTP,HyperText Transfer Protocol)等。TELNET允许一台机器上的用户登录到远程机器上,并进行工作;FTP提供有效地将文件从一台机器上移到另一台机器上的方法;SMTP用于电子邮件的收发;DNS用于把主机名映射到网络地址;NNTP用于新闻的发布、检索和获取;HTTP用于在WWW上获取主页。

    简单说来:应用层是应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。

    传输层(Tramsport Layer)

    传输层(Tramsport Layer)使源端和目的端机器上的对等实体可以进行会话。在这一层定义了两个端到端的协议:传输控制协议(TCP,Transmission Control Protocol)和用户数据报协议(UDP,User Datagram Protocol)。TCP是面向连接的协议,它提供可靠的报文传输和对上层应用的连接服务。为此,除了基本的数据传输外,它还有可靠性保证、流量控制、多路复用、优先权和安全性控制等功能。UDP是面向无连接的不可靠传输的协议,主要用于不需要TCP的排序和流量控制等功能的应用程序。

    互联网层 (Internet Layer)

    互联网层(Internet Layer)是整个体系结构的关键部分,其功能是使主机可以把分组发往任何网络,并使分组独立地传向目标。这些分组可能经由不同的网络,到达的顺序和发送的顺序也可能不同。高层如果需要顺序收发,那么就必须自行处理对分组的排序。互联网层使用因特网协议(IP,Internet Protocol)。TCP/IP参考模型的互联网层和OSI参考模型的网络层在功能上非常相似。

    网络访问层(Network Access Layer)

    网络访问层(Network Access Layer),即网络接口层,在TCP/IP参考模型中并没有详细描述,只是指出主机必须使用某种协议与网络相连。
    由于没有详细描述,因此网络访问层,有时候也拆分成数据链路层和物理层。

    主要优点

    (1)TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。
    (2)TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(Token Ring Network)、拨号线路(Dial-up line)、X.25网以及所有的网络传输硬件。
    (3)统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有惟一的地址
    (4)标准化的高层协议,可以提供多种可靠的用户服务。

    协议的优势

    在长期的发展过程中,IP逐渐取代其他网络。这里是一个简单的解释。IP传输通用数据。数据能够用于任何目的,并且能够很轻易地取代以前由专有数据网络传输的数据。下面是一个普通的过程:

    一个专有的网络开发出来用于特定目的。如果它工作很好,用户将接受它。

    为了便利提供IP服务,经常用于访问电子邮件或者聊天,通常以某种方式通过专有网络隧道实现。隧道方式最初可能非常没有效率,因为电子邮件和聊天只需要很低的带宽。

    通过一点点的投资IP 基础设施逐渐在专有数据网络周边出现。

    用IP取代专有服务的需求出现,经常是一个用户要求。

    IP替代品过程遍布整个因特网,这使IP替代品比最初的专有网络更加有价值(由于网络效应)。

    专有网络受到压制。许多用户开始维护使用IP替代品的复制品。

    IP包的间接开销很小,少于1%,这样在成本上非常有竞争性。人们开发了一种能够将IP带到专有网络上的大部分用户的不昂贵的传输媒介。

    大多数用户为了削减开销,专有网络被取消。

    主要缺点

    第一,它在服务、接口与协议的区别上就不是很清楚。一个好的软件工程应该将功能与实现方法区分开来,TCP/IP恰恰没有很好地做到这点,就使得TCP/IP参考模型对于使用新的技术的指导意义是不够的。TCP/IP参考模型不适合于其他非TCP/IP协议簇。

    第二,主机-网络层(网络接口层)本身并不是实际的一层,它定义了网络层与数据链路层的接口。物理层与数据链路层的划分是必要和合理的,一个好的参考模型应该将它们区分开,而TCP/IP参考模型却没有做到这点。

  • 相关阅读:
    C语言程序设计 第二章 数据类型
    C语言程序设计 认识函数
    趣味c语言编程100例(三)
    如何使用 Eset Nod32通行证批量获取精灵
    C语言程序设计 使用库函数参考手册
    C语言程序设计 概述
    C语言程序设计 VC6调试程序(视频)
    趣味c语言编程100例(四)
    java WebService 异常
    数据库战略高度解析(2) 数据库驱动程序
  • 原文地址:https://www.cnblogs.com/wanghang/p/6298835.html
Copyright © 2011-2022 走看看