TCP/IP重要的特性就是分层。TCP/IP 按照层次分为四层:应用层、传输层、网络层、数据链路层。分层的好处就是当某些地方需要改变的时候,只需要将改变的层替换掉即可,而不用去把整体做替换。各层之间的接口部分规划好了,层次内部的设计就能够自由改动了。

1. TCP/IP各层的作用

1.1 应用层

应用层决定了向用户提供应用服务时通信的活动。

TCP/IP 协议族内预存了各类通用的应用服务,比如FTP(文件传输协议)和DNS(域名系统)服务就是其中的两类。HTTP协议也属于该层。

1.2 传输层

传输层对上层应用层提供网络连接中的两台计算机之间的数据传输。传输层有两个性质不同的协议:TCP(传输控制协议)和UDP(用户数据报协议)。

1.3 网络层

网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位,该层规定了通过怎样的路径(传输路线)到达对方计算机,并把数据包传给对方。与对方计算机或网络设备进行传输时,网络层起的作用就是在众多的选项内选择一条传输路线。

1.4 链路层(又称数据链路层)

链路层处理链接网络的硬件部分。包括控制操作系统、硬件的设备驱动、网卡、光线等物理可见部分(其实就是传输媒介)。硬件上的范畴均在链路层的作用范围内。

2. 重要协议与服务介绍

2.1 IP协议

IP协议不同于IP地址,IP协议的作用就是将各种数据包传送给对方。要确保确实能传送给对方,需要满足的两个条件是IP地址和MAC地址。IP地址指明了节点被分配到的地址,MAC地址指的是网卡所属的固定地址。

2.2 TCP协议

TCP位于传输层,提供可靠的字节流服务。字节流服务是指将大块数据进行分割,以报文段为单位进行管理。可靠的传输服务指的是,把数据准确可靠的传个对方。也就是说TCP协议为了更容易的传输大块数据才把数据进行了分割,而且TCP协议能够确认数据是否送达到对方。

TCP的三次握手—— 目的:为了准确无误的将数据送达目标。 握手过程使用的标识:SYN和ACK。 过程:发送端先发送一个SYN标识的数据包给对方,对方接受到之后回传一个SYN/ACK数据包表示传达确认消息。最后发送端在回传一个带ACK表示的数据包,代表握手结束。如果中间出现中断,则TCP会以相同的顺序发送相同的数据包。

2.3 DNS服务

DNS服务是和HTTP协议一样位于应用层的协议。提供域名到IP之间的解析服务。

3. 各种协议与HTTP协议的关系

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

  1. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

  2. iOS的TCP/IP协议族剖析&&Socket

    原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0 简介 该篇文章主要回顾--TCP/IP协议族中的TCP/UDP.HTTP:还有S ...

  3. 深入浅出--iOS的TCP/IP协议族剖析&&Socket

    深入浅出--iOS的TCP/IP协议族剖析&&Socket   简介 该篇文章主要回顾--TCP/IP协议族中的TCP/UDP.HTTP:还有Socket.(--该文很干,酝酿了许久! ...

  4. TCP/IP协议族(一)

    TCP/IP协议族(一) HTTP简介.请求方法与响应状态码 接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的. ...

  5. 重识TCP/IP协议族与HTTP基础

    不忘初心 砥砺前行, Tomorrow Is Another Day ! 本文概要: TCP/IP协议族的网络分层 TCP三次握手四次挥手 Http简介 报文结构 Http的请求方法及状态码 常用的H ...

  6. 深入浅出-TCP/IP协议族剖析&&Socket

    Posted by 微博@Yangsc_o 原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0 #简介 该篇文章主要回顾–TCP/I ...

  7. Android网络编程系列 一 TCP/IP协议族

    在学习和使用Android网路编程时,我们接触的仅仅是上层协议和接口如Apache的httpclient或者Android自带的httpURlconnection等等.对于这些接口的底层实现我们也有必 ...

  8. TCP/IP协议原理与应用笔记10:TCP/IP协议族

    1. 协议族视图如下:(这里我们列举重要的,并不是所有的) (1)网络接入层(数据链路层 和 物理层): 通过接入的物理网络的 功能 和 覆盖范围 进行分析划分为: •LANs :局域网(Local ...

  9. 服务器编程入门(1)TCP/IP协议族

    问题聚焦: 简单地梳理一下TCP/IP各层的功能和常用协议 详细了解ARP(数据链路层)和DNS(应用层)协议的工作原理 1 TCP/IP协议族体系结构 数据链路层:     职责:实现网卡接口的网络 ...

随机推荐

  1. Laravel Eloquent get获取空的数据问题

    在用laravel框架来获取数据,若数据不存在时,以为会返回空,其实不是的,其实是一个 collection 值,会返回如下: object(Illuminate\Database\Eloquent\ ...

  2. [Unity]C#中 将XML和实体类之间进行相互转换的工具类

    using System; using System.Xml; using System.Xml.Serialization; using System.IO; namespace LOTool { ...

  3. hadoop重新启动之后Datanode无法启动的问题

    每次将hadoop重新启动之后我们查看进程就会发现,namenode成功启动,然而datanode却不能重新启动,格式化以后也不行,百思不得其解,最后在终于在厦门大学的一篇博客里面找到了解决的方法,我 ...

  4. IOS FMDB模糊查询

    http://blog.sina.com.cn/s/blog_9630f1310101fx1d.html /查询记录 -(NSArray*)selectitemDream_desc:(JiemengS ...

  5. P4语言编程快速开始 实践二

    参考:P4语言编程快速开始 上一篇系列博客:P4语言编程快速开始 实践二 Demo 2 本Demo所做的修改及实现的功能: 为simple_router添加一个计数器(counter),该计数器附加( ...

  6. 【转】C\C++代码优化的27个建议

    1. 记住阿姆达尔定律: funccost是函数func运行时间百分比,funcspeedup是你优化函数的运行的系数. 所以,如果你优化了函数TriangleIntersect执行40%的运行时间, ...

  7. Linux - tomcat -jndi数据源配置

    Linux - tomcat -jndi数据源配置 tomcat/conf/context .xml 文件中修改如下 <Resource name="/jdbc/--" au ...

  8. Linux安装Tomcat外部不能访问

    Linux安装Tomcat后本地可以正常访问,可是这时Tomcat还不能被外界访问需要在Linux默认防护墙上打开8080端口 打开 /etc/sysconfig/iptables [root@loc ...

  9. Docker学习计划

    刚开始学习Docker的时候,找资料在网上看到最多的是Docker的好处.比如: 1.Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多 2.Docker 对系统资源的利用率很高, ...

  10. ajax 页面请求后,jsp页面定位

    如下图所示.A,B两区域为不动区域,既不随着滚动条的滚动而移动.C区域为异步加载内容区域, 在C区域中,点击查询按钮,需要异步加载查询 结果.但是查询结果会很长,这样子,就需要向下滑动滚动条,用户体验 ...