`
mxczlp
  • 浏览: 2172 次
  • 性别: Icon_minigender_1
  • 来自: 济南
最近访客 更多访客>>
社区版块
存档分类
最新评论

TCP/IP协议

阅读更多

TCP/IP

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

OSI中的层

功能

TCP/IP协议族

应用层

文件传输,电子邮件,文件服务,虚拟终端

TFTPHTTPSNMPFTPSMTPDNSTelnet 等等

表示层

数据格式化,代码转换,数据加密

没有协议

会话层

解除或建立与别的接点的联系

没有协议

传输层

提供端对端的接口

TCPUDP

网络层

数据包选择路由

IPICMPOSPFEIGRPIGMP

数据链路层

传输有地址的帧以及错误检测功能

SLIPCSLIPPPPMTU

物理层

以二进制数据形式在物理媒体上传输数据

ISO2110IEEE802IEEE802.2

 

 

 

 

 

IP

IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCPUDP层;相反,IP层也把从TCPUDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是否按顺序发送的或者有没有被破坏,IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。

高层的TCPUDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCPUDP的服务来说,使用了该选项的IP包好像是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。

TCP

TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通讯。

TCP提供的是一种可靠的数据流服务,采用带重传的肯定确认技术来实现传输的可靠性。TCP还采用一种称为滑动窗口的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。

如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。

TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。

面向连接的服务(例如TelnetFTPrloginX WindowsSMTP)需要高度的可靠性,所以它们使用了TCPDNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。

UDP

UDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。

UDP通讯时不需要接收方确认,属于不可靠的传输,可能会出现丢包现象,实际应用中要求程序员编程验证。

UDPTCP位于同一层,但它不管数据包的顺序、错误或重发。因此,UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询---应答的服务,例如NFS。相对于FTPTelnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网络时间协议)和DNSDNS也使用TCP)。

欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与UDP相关的服务面临着更大的危险。

ICMP

ICMPIP位于同一层,它被用来传送IP的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP‘Redirect’信息通知主机通向其他系统的更准确的路径,而‘Unreachable’信息则指出路径有问题。另外,如果路径不可用了,ICMP可以使TCP连接体面地终止。PING是最常用的基于ICMP的服务。

通讯端口

TCPUDP服务通常有一个客户/服务器的关系,例如,一个Telnet服务进程开始在系统上处于空闲状态,等待着连接。用户使用Telnet客户程序与服务进程建立一个连接。客户程序向服务进程写入信息,服务进程读出信息并发出响应,客户程序读出响应并向用户报告。因而,这个连接是双工的,可以用来进行读写。

两个系统间的多重Telnet连接是如何相互确认并协调一致呢?TCPUDP连接唯一地使用每个信息中的如下四项进行确认:

ip址地发送包的IP地址。

目的IP地址 接收包的IP地址。

源端口源系统上的连接的端口。

目的端口目的系统上的连接的端口。

端口是一个软件结构,被客户程序或服务进程用来发送和接收信息。一个端口对应一个16比特的数。服务进程通常使用一个固定的端口,例如,SMTP使用25Xwindows使用6000。这些端口号广为人知的,因为在建立与特定的主机或服务的连接时,需要这些地址和目的地址进行通讯。

数据格式

数据帧:帧头+IP数据包+帧尾(帧头包括源和目标主机MAC地址及类型,帧尾是校验字)

IP数据包:IP头部+TCP数据信息(IP头包括源和目标主机IP地址、类型、生存期等)

TCP数据信息:TCP头部+实际数据 (TCP头包括源和目标主机端口号、顺序号、确认号、校验字等)

IP地址

Internet上连接的所有计算机,从大型机到微型计算机都是以独立的身份出现,我们称它为主机。为了实现各主机间的通信,每台主机都必须有一个唯一的网络地址。就好像每一个住宅都有唯一的门牌一样,才不至于在传输资料时出现混乱。

Internet的网络地址是指连入Internet网络的计算机的地址编号。所以,在Internet网络中,网络地址唯一地标识一台计算机。

我们都已经知道,Internet是由几千万台计算机互相连接而成的。而我们要确认网络上的每一台计算机,靠的就是能唯一标识该计算机的网络地址,这个地址就叫做IPInternet Protocol的简写)地址,即用Internet协议语言表示的地址。

Internet里,IP地址是一个32位的二进制地址,为了便于记忆,将它们分为4组,每组8位,由小数点分开,用四个字节来表示,而且,用点分开的每个字节的数值范围是0~255,如202.116.0.1,这种书写方法叫做点数表示法。

IPV4

IPv4,是互联网协议Internet ProtocolIP)的第四版,也是第一个被广泛使用,构成现今互联网技术的基石的协议。1981Jon Postel RFC791中定义了IPIpv4可以运行在各种各样的底层网络上,比如端对端的串行数据链路(PPP协议和SLIP协议) ,卫星链路等等。局域网中最常用的是以太网。

IPv6

IPv6Internet Protocol Version 6的缩写,其中Internet Protocol译为互联网协议IPv6IETF(互联网工程任务组,Internet Engineering Task Force)设计的用于替代现行版本IP协议(IPv4)的下一代IP协议。

IPV4相比,IPV6具有以下几个优势:

一、IPv6具有更大的地址空间。IPv4中规定IP地址长度为32,即有2^32-1(符号^表示升幂,下同)个地址;而IPv6IP地址的长度为128,即有2^128-1个地址。

二、IPv6使用更小的路由表IPv6的地址分配一开始就遵循聚类(Aggregation)的原则,这使得路由器能在路由表中用一条记录(Entry)表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。

三、IPv6增加了增强的组播(Multicast)支持以及对流的控制(Flow Control),这使得网络上的多媒体应用有了长足发展的机会,为服务质量QoSQuality of Service)控制提供了良好的网络平台。

四、IPv6加入了对自动配置Auto Configuration)的支持。这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。

 

五、IPv6具有更高的安全性。在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,极大的增强了网络的安全性。

  • 大小: 34.9 KB
  • 大小: 211 KB
分享到:
评论

相关推荐

    Windows环境下TCP/IP协议的配置,TCP/IP诊断

    Windows 环境下 TCP/IP 协议的配置和诊断 本资源摘要信息主要涉及到 Windows 环境下的 TCP/IP 协议配置和诊断。该资源包括了 TCP/IP 协议的配置、 Ping 命令工具的使用、Ipconfig 工具的使用等内容。 知识点一:...

    microchip TCP/IP协议栈应用笔记V3.6

    《microchip TCP/IP协议栈应用笔记V3.6》是一份深入探讨Microchip公司TCP/IP协议栈实现与应用的重要文档,特别适合嵌入式系统开发者和网络通信工程师参考。Microchip TCP/IP协议栈是该公司为微控制器提供的完整网络...

    实训(2)Windows环境下TCP/IP协议的配置,TCP/IP诊断.pdf

    TCP/IP 协议在 Windows 环境下的配置和诊断 本文主要讲述了在 Windows 环境下 TCP/IP 协议的配置和诊断,包括网络配置、TCP/IP 协议配置、Ping 命令工具的使用、Ipconfig 工具的使用等内容。 一、网络配置 在 ...

    TCP/IP协议族(第四版)习题答案

    TCP/IP协议族是互联网通信的基础,它是一组协议的集合,包括了网络接口层、网际层、传输层以及应用层等多个层次。这份"TCP/IP协议族(第四版)习题答案"涵盖了这个领域的核心概念和实践应用,对于学习者来说,是一个...

    基于TCP/IP协议的Socket编程

    基于TCP/IP协议的Socket编程 TCP/IP协议是网络通信协议的基础,它规定了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据传输格式以及传送方式。TCP/IP协议的基本传输单位是数据包(datagram),TCP...

    TCP/IP协议栈及其各个层次的内容

    TCP/IP协议栈及其各个层次的内容 TCP/IP协议栈是一个复杂的网络协议栈,它由四个层次组成:网络层、传输层、高层和应用层。每个层次都有其特定的功能和协议。 网络层 网络层是TCP/IP协议栈的第三层,也是OSI参考...

    TCP/IP协议配置及Windows网络实用程序的应用 实验报告

    ### TCP/IP协议配置及Windows网络实用程序的应用 #### 实验背景与目的 随着信息技术的不断发展,网络已经成为现代社会不可或缺的一部分。为了确保网络的高效稳定运行,掌握TCP/IP协议配置及网络实用程序的应用至关...

    对以太网全硬件TCP/IP协议栈的简单认识-w5500以太网协议基本认识.pdf

    ### 对以太网全硬件TCP/IP协议栈的简单认识 #### 一、OSI七层结构模型概述 在深入探讨以太网全硬件TCP/IP协议栈之前,我们首先需要了解网络通信的基础——OSI(Open System Interconnect)七层模型。这一模型由...

    STM32单片机TCP/IP协议

    STM32单片机在物联网和嵌入式系统中广泛应用,而TCP/IP协议栈是其在联网通信中不可或缺的一部分。TCP/IP(传输控制协议/互联网协议)是一组用于规范网络通信的标准协议,使得不同设备之间可以高效、可靠地交换数据。...

    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协议栈是互联网通信的核心,负责将数据打包并发送到目的地,同时处理接收到的数据。本文将分析五个开源的TCP/IP协议栈:BSD TCP/IP、uC/IP、LwIP、uIP以及TinyTcp,探讨它们的特点、...

    TCP/IP协议分析

    TCP/IP 协议分析及应用 TCP/IP 协议分析及应用是计算机网络的核心协议,了解 TCP/IP 协议对学习计算机网络和深入学习网络技术非常重要。本文对 TCP/IP 协议进行了详细的分析,并对 FTP 协议进行了实验,通过对 FTP ...

    TCP/IP协议分析与应用学习资料

    TCP/IP协议是互联网的核心协议,它定义了网络设备如何交换数据以及数据如何被格式化以进行传输。这个学习资料包,以PPT的形式,旨在帮助理解TCP/IP协议的工作原理及其在实际应用中的运用。 首先,TCP(Transmission...

    TCP/IP协议与网络编程技术

    在Internet普及的今天,作为Internet工作基础的TCP/IP协议及其编程已经成了IT人业人员所要具备的基本知识与技能。打开国内外各大知名网站的招聘页面,都可以看到类似于“熟悉TCP/IP协议、掌握socket通讯开发”等字样...

    TCP/IP协议详细介绍

    TCP/IP协议是互联网的核心协议,它定义了网络设备如何交换信息。本文主要涵盖了TCP/IP协议的基础知识,包括计算机网络体系结构的分层、TCP/IP协议的含义及其组件、数据包的构成、数据处理流程等内容。 计算机网络...

    AUTOSAR_SWS_TcpIp-stack TCP/IP协议栈 经典平台 4.3.1 2017-12-8

    ### AUTOSAR_SWS_TcpIp-stack TCP/IP协议栈 经典平台 4.3.1 #### 一、概述 本文档详细介绍了AUTOSAR_SWS_TcpIp-stack(TCP/IP协议栈)在经典平台上的规范,版本为4.3.1。此文档包含了自2013年初始发布以来的所有...

    基于TCP/IP协议的网络编程

    在IT行业中,网络编程是构建分布式系统和互联网应用程序的基础,而TCP/IP协议栈则是网络通信的核心。本主题将深入探讨“基于TCP/IP协议的网络编程”,特别是如何利用C++语言和Windows API函数来实现这一目标。 TCP...

    TCP/IP协议详解卷一

    TCP/IP协议,T C P / I P起源于6 0年代末美国政府资助的一个分组交换网络研究项目,到9 0年代已发展成为计 算机之间最常应用的组网形式。它是一个真正的开放系统,因为协议族的定义及其多种实现 可以不用花钱或花很...

    图解TCP/IP协议

    在当今网络通信领域中,TCP/IP协议是最基础也是最重要的协议之一。TCP/IP协议是互联网通信的基础,它规定了设备之间进行通信的规则。"图解TCP/IP协议"这一主题将详细介绍TCP/IP协议的工作过程,其中涉及了建立连接、...

Global site tag (gtag.js) - Google Analytics