一、什么是TCP/IP

TCP/IP是一类协议系统,它是用于网络通信的一套协议集合

TCP/IP是供已连接因特网的计算机进行通信的通信协议

TCP/IP指传输控制协议/网际协议

TCP/IP定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准

(1)在TCP/IP内部

在TCP/IP中包含一系列用于处理数据通信的协议
          1、TCP(传输控制协议)-应用程序之间通信
          2、UDP(用户数据报协议)-应用程序之间的简单通信
          3、IP(网际协议)-计算机之间的通信
          4、ICMP(因特网消息控制协议)-针对错误和状态
          5、DHCP(动态主机配置协议)-针对动态寻址

(2)TCP使用固定的连接

TCP用于应用程序之间的通信。当应用程序希望通过TCP与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP将在两个应用程序之间建立一个全双工的通信 
这个全双工的的通信将占用两个计算机之间的通信线路,直到它被一方或双方关闭为止 
UDP和TCP很相似,但是更简单,同时可靠性低于TCP

(3)IP是无连接的

IP是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样IP就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要 
通过IP,消息(或这其他数据被分割为小的独立的包,并通过因特网在计算机之间传送) 
IP负责将每个包路由至它的目的地

(4)TCP/IP

TCP/IP意味着TCP和IP在一起协同工作 
        TCP负责应用软件(比如你的浏览器)和网络软件之间的通信 
        IP负责计算机之间的通信 
        TCP负责将数据分割并装入IP包,然后在他们到达的时候重新组合它们 
        IP负责将包发送至接收者

二、四层协议

传统上来说TCP/IP被认为是一个四层协议。

(1)网络接口层

主要是指物理层次的一些接口,比如电缆等

(2)网络层

提供独立于硬件的逻辑寻址,实现物理地址与逻辑地址的转换 
    在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议) 
  IP-网际协议 
  IP负责计算机之间的通信。 
  IP负责在因特网上发送和接收数据包

(3)传输层

为网络提供了流量控制,错误控制和确认服务 
  在TCP/IP协议族中有两个互不相同的传输协议: 
  TCP(传输控制协议)、UDP(用户数据报协议) 
  TCP-传输控制协议 
  TCP使用固定的连接 
  TCP用于从应用程序到网络的数据传输控制 
  TCP负责在数据传送之前将它们分割为IP包,然后在它们到达的时候将它们重组

(4)应用层

为网络排错,文件传输,远程控制和Internet操作提供具体的应用程序

三、数据包

在TCP/IP协议中数据先由上往下将数据装包,然后由下往上拆包 。在装包的时候,每一层都会增加一些信息用于传输,这部分信息就叫报头,当上层的数据到达本层的时候,会将数据加在本层的报头打包在一起,继续往下传递 。拆包的时候,每一层将本层需要的报头读取后,就将剩下的数据往上传

拆包的时候,每一层将本层需要的报头读取后,就将剩下的数据往上传

四、网络层

网络层主要就是做物理地址与逻辑地址之间的转换 
        目前市场上应用的 最多的是32位二进制的IPv4,因为IPv4的地址已经不够用了,所以128位二进制的IPv6应用越来越广泛了 
        TCP/IP协议网络上的每一个网络适配器都有一个唯一的IP地址 
        IP地址是一个32位的地址,这个地址分为4段,每8个二进制为一段,但是为了方便阅读,通常会将每段都转换为十进制来表示,比如大家非常熟悉的192.168.0.1 
        IP地址分为两个部分: 
        1、网络ID 
        2、主机ID 
        绝大多数IP地址属于以下几类 
        1、A类地址:IP地址的前8位代表网络ID,后24位代表主机ID 
        2、B类地址:IP地址的前16位代表网络ID,后16位代表主机ID 
        3、C类地址:IP地址的前24位代表网络ID,后8位代表主机ID 
        如果32位的IP地址以0开头,那么它就是一个A类地址 
        如果32位的IP地址以10开头,那么它就是一个B类地址 
        如果32位的IP地址以110开头,那么它就是一个C类地址

五、运输层

传输层提供了两种到达目标网络的方式 
            1、传输控制协议(TCP):提供了完善的错误控制和流量控制,能够确保数据正常传输,是一个面向连接的协议。 
            2、用户数据报协议(UDP):只提供了基本的错误检测,是一个无连接的协议。 
        特点: 
            1)UDP:
            把数据打包 
            数据大小有限制(64k) 
            不建立连接 
            速度快,但可靠性低 
            2)TCP:
            建立连接通道 
            数据大小无限制 
            速度慢,但是可靠性高

六、应用层

(1)运行在TCP协议上的协议:

HTTP(Hypertext Transfer Protocol,超文本传输协议),主要用于普通浏览。 
        HTTPS(Hypertext Transfer Protocol over Secure Socket Layer, or HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。 
        FTP(File Transfer Protocol,文件传输协议),由名知义,用于文件传输。 
        POP3(Post Office Protocol, version 3,邮局协议),收邮件用。 
        SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。 
        TELNET(Teletype over the Network,网络电传),通过一个终端(terminal)登陆到网络。 
        SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用。

(2)运行在UDP协议上的协议:

BOOTP(Boot Protocol,启动协议),应用于无盘设备。 
        NTP(Network Time Protocol,网络时间协议),用于网络同步。 
        DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。

(3)其他:

DNS(Domain Name Service,域名服务),用于完成地址查找,邮件转发等工作(运行在TCP和UDP协议上)。 
        ECHO(Echo Protocol,回绕协议),用于查错及测量应答时间(运行在TCP和UDP协议上)。 
        SNMP(Simple Network Management Protocol,简单网络管理协议),用于网络信息的收集和网络管理。 
        ARP(Address Resolution Protocol,地址解析协议),用于根据IP地址获取物理地址。

  RARP(反向地址转换协议):反向解析物理地址并返回其对应的IP地址(MAC地址不会随网络更改而变换)

TCP/IP协议介绍的更多相关文章

  1. TCP/IP 协议介绍

    转自http://blog.jobbole.com/104886/ 一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应 ...

  2. 以太网接口TCP/IP协议介绍,说的很容易懂了

      以太网接口TCP/IP协议介绍,说的很容易懂了  TCP/IP协议,或称为TCP/IP协议栈,或互联网协议系列. TCP/IP协议栈(按TCP/IP参考模型划分) 应用层 FTP SMTP HTT ...

  3. 文件传输——TCP/IP协议介绍总结

    一.链路层 数据链路层的工作特性: 1.为IP模块发送和接收IP数据报2.为ARP模块发送ARP请求和接收ARP应答(ARP:地址解析协议,将IP地址转换成MAC地址)3.为RARP发送RARP请求和 ...

  4. python编程系列---白痴女朋友(我没有女朋友!)看了都能懂的TCP/IP协议介绍

    前言 早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Microsoft都有各自的网络协议,互不兼容:为了把全世界的所有不同类型的计算机都连接起来,就必须规定一套全球通用的协议,为 ...

  5. TCP/IP协议基础(转)

    转自 http://www.chinaunix.net 作者:Bernardus160  发表于:2003-12-03 17:33:15 TCP/IP协议基础 -------------------- ...

  6. Python Web学习笔记之TCP/IP协议原理与介绍

    HTTP.FTP.SMTP.Telnet等等协议,哦!那个HTTP协议啊就是访问网页用的那个协议啊然后那个······其实······你懂得,我们应该从实际来了解他,理解网络协议的作用与功能,然后再从 ...

  7. 云计算介绍、TCP/IP协议及配置

                                                 云计算介绍.TCP/IP协议及配置 1案例1:配置计算机名及工作组 1.1问题 本例要求为修改计算机名并加入工 ...

  8. 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)

    一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...

  9. TCP/IP协议简单介绍

    TCP/IP协议族总共分为四层,分别为:          应用层:应用层协议有Telnet(远程登入协议).FTP(文件传输协议).SMTP(简单邮件传送协议).SNMP(简单网络管理协议).HTT ...

随机推荐

  1. 【2】KNN:约会对象分类器

    前言 这是一个KNN算法的应用实例,参考<机器学习实战>中的datingTestSet2.txt的数据集. 可以通过对不同约会对象的特征进行分析然后自动得出以下三种结论: 不喜欢的 有点魅 ...

  2. 解决rac错误 ORA-01102: cannot mount database in EXCLUSIVE mode

    启动 Oracle  11g RAC数据库时出现以下错误.只能启动其中一个节点(rac01),另一个节点启动不了(rac02).可能是以前修改cluster_database这个参数引起的.在Orac ...

  3. odoo12从零开始:三、2)odoo模型层

    前言 上一篇文章(创建你的第一个应用模块(module))已经大致描述了odoo的模型层(model)和视图层(view),这一篇文章,我们将系统地介绍有关于model的知识,其中包括: 1.模型的类 ...

  4. Spring Cloud Alibaba | Sentinel:分布式系统的流量防卫兵进阶实战

    Spring Cloud Alibaba | Sentinel:分布式系统的流量防卫兵进阶实战 在阅读本文前,建议先阅读<Spring Cloud Alibaba | Sentinel:分布式系 ...

  5. JS 转换日期UTC类型

    前台取到的日期类型为UTC,"yyyy-MM-dd'T'HH:mm:ss.SSS",后台接收报错如下: org.springframework.http.converter.Htt ...

  6. .Ajax(async异步与sync同步)

    异步,不会阻碍代码的执行,它会等待所有的同步代码执行完毕后,再执行输出自己的同步结果.(原生js中,只有定时器,DOM,ajax三个东西是异步的.) 同步,代码只会从上到下依次执行,只要一步出错,接下 ...

  7. xml文档的解析并通过工具类实现java实体类的映射:XML工具-XmlUtil

    若有疑问,可以联系我本人微信:Y1141100952 声明:本文章为原稿,转载必须说明 本文章地址,否则一旦发现,必追究法律责任 1:本文章显示通过 XML工具-XmlUtil工具实现解析soap报文 ...

  8. Git 从入门到熟练|不敢说精通

    前言 如果有一定版本管理软件基础或使用过 svn 的你,这篇 git 的文章应该是最适合你的.作者也是从 svn 过来,从开始的觉得 git 麻烦,到最后还是感觉 git 是最好用的版本控制软件. 虽 ...

  9. Linux环境下进行分布式压测踩过的坑

    背景:公司为了满足大并发的情况,需要测试组配合,就需要分布式压测,这里我把我踩过坑都记录下来: 环境:Linux + jmeter-v.5.1.1;使用3台2核4G的压力机: Q1: Server f ...

  10. 弄懂Java为何只有值传递

    最近有同学问我关于Java中值传递与引用传递的问题,在此小结一下 值传递是指在函数调用时将实参内容复制一份传递给形参,这样在函数中改变该参数不会对原参数产生影响. 引用传递是指将对象地址的引用传递给该 ...