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. $.when().done().then()的用法

    jQuery的开发速度很快,几乎每半年一个大版本,每两个月一个小版本. 每个版本都会引入一些新功能.今天我想介绍的,就是从jQuery 1.5.0版本开始引入的一个新功能----deferred对象. ...

  2. 从内存中加载DLL Delphi版(转)

    源:从内存中加载DLL DELPHI版 原文 : http://www.2ccc.com/article.asp?articleid=5784 MemLibrary.pas //从内存中加载DLL D ...

  3. PageRank在Hadoop和spark下的实现以及对比

    关于PageRank的地位,不必多说. 主要思想:对于每个网页,用户都有可能点击网页上的某个链接,例如 A:B,C,D B:A,D C:AD:B,C 由这个我们可以得到网页的转移矩阵      A   ...

  4. Android高斯模糊技术,实现毛玻璃效果(转)

    本博客转自郭霖公众号:http://mp.weixin.qq.com/s?__biz=MzA5MzI3NjE2MA==&mid=2650235930&idx=1&sn=e328 ...

  5. iOS开发——Reachability和AFNetworking判断网络连接状态

    一.Reachability // 监听网络状态改变的通知 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selec ...

  6. select取值问题

    全栈攻城狮们给挖了各种坑..其中一个典型是select控件取值.直接上代码: <!DOCTYPE html> <html lang="en"> <he ...

  7. Unity3D ——强大的跨平台3D游戏开发工具(一)

    众所周知,Unity3D是一个能够实现轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎.在现有的版本中,其强大的游戏制作功能已 经达到让人瞠目结舌的地步.尤其是它在3.0版本里面制作的那款 ...

  8. TSP问题 遗传算法 智能优化算法

    写了半天,效率还是有点低的,以后有空再优化下: //用次序表示法来表示个体编码 #include<iostream> #include<fstream> #include< ...

  9. iOS 选择框 单选框

    UIButton *checkbox = [UIButton buttonWithType:UIButtonTypeCustom]; CGRect checkboxRect = CGRectMake( ...

  10. html <select> 用JS控制默认选中项

    <html> <head> <!--禁止页面缓存--><meta http-equiv="content-type" content=&q ...