TCP/IP参考模型和TCP/IP协议

  与OSI参考模型相似,TCP/IP参考模型汲取了网络分层的思想,而且对网络的层次做了简化,并在网络各层都提供了完善的协议,这些协议构成了TCP/IP协议集,简称TCP/IP协议。

  

  TCP/IP参考模型分为4个层次:应用层、传输层、网络互连层和主机-网络层。在每一层都有相应的协议。确切地说,TCP/IP协议应该称为TCP/IP协议集,它是TCP/IP参考模型的除了主机-网络层(由第三方提供)以外的其他三层的协议的集合,而IP协议和TCP协议则是协议集中最核心的两个协议。

  TCP/IP参考模型的各层协议

  

  在TCP/IP参考模型中,去掉了OSI参考模型中的会话层和表示层,这两层的功能被合并到应用层,同时将OSI参考模型中的数据链路层和物理层合并到主机-网络层。

  ·1、主机-网络层

  实际上TCP/IP参考模型并没有真正提供这一层的实现,也没有提供协议。它只是要求第三方实现的主机-网络层能够为上层提供一个访问接口,使得网络互联层能利用主机-网络层来传递IP数据包。

  2、网络互联层

  网络互联层是整个参考模型的核心。它的功能是把IP数据包发送到目标主机。为了尽快地发送数据,IP协议把原始数据分为多个数据包,然后沿着不同的路径同时传递数据包。数据包到达的先后顺序和发送的先后顺序可能不同,这需要上传对数据包重新排序,还原为原始数据。

  

  网络互联层具备连接异构网的功能。如图:连接以太网和令牌网不同的网络拓扑结构。以太网和令牌网都向网络互联层提供了统一的访问接口,访问接口向网络互联层隐藏了下层网络的差异,使得两个网络之间可以顺利传递数据包。

  

  网络互联层采用IP协议,它规定了数据包的格式,并且规定了为数据包寻找路由的流程。

  传输层

  传输层的功能是使源主机和目标主机上的进程可以进行对话。在传输层定义了两中服务质量不同的协议,TCP(传输控制协议)和UDP(用户数据报协议)。TCP协议是一种面向连接的、可靠的协议。它将源主机发出的字节流无差错地发送给互联网上的目标主机。在发送端,TCP协议负责把上层传送下来的数据分成报文段传递给下层。在接收端,TCP负责把收到的报文进行重组后递交给上层。TCP协议还要控制端到端的流量控制,以避免接收速度缓慢的接收方没有足够的缓冲区来接收发送方发送的大量数据。UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。UDP不能保证数据报的接收顺序同发送顺序相同,甚至不能保证它们是否全部达到目标主机。

  应用层

  TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。

  FTP:文件传输协议

  TELNET:远程登录协议

  HTTP:超文本传输协议

  HTTPS:安全超文本传输协议,允许在网络上安全地传输超文本,网上传输的是经过加密的数据,到达目的地后再对数据解密。

  POP3:邮局协议-版本3

  SMTP:简单邮件传送协议

  DNS:域名系统协议

  URL规则

  

  

  

Java网络编程のTCP/IP的更多相关文章

  1. Socket网络编程(TCP/IP/端口/类)和实例

    Socket网络编程(TCP/IP/端口/类)和实例 原文:C# Socket网络编程精华篇 转自:微冷的雨 我们在讲解Socket编程前,先看几个和Socket编程紧密相关的概念: TCP/IP层次 ...

  2. 网络编程TCP/IP详解

    网络编程TCP/IP详解 1. 网络通信 中继器:信号放大器 集线器(hub):是中继器的一种形式,区别在于集线器能够提供多端口服务,多口中继器,每个数据包的发送都是以广播的形式进行的,容易阻塞网络. ...

  3. JAVA基础知识之网络编程——-TCP/IP协议,socket通信,服务器客户端通信demo

    OSI模型分层 OSI模型是指国际标准化组织(ISO)提出的开放系统互连参考模型(Open System Interconnection Reference Model,OSI/RM),它将网络分为七 ...

  4. 网络编程TCP/IP实现客户端与客户端聊天

    一.TCP/IP协议 既然是网络编程,涉及几个系统之间的交互,那么首先要考虑的是如何准确的定位到网络上的一台或几台主机,另一个是如何进行可靠高效的数据传输.这里就要使用到TCP/IP协议. TCP/I ...

  5. java网络编程(TCP详解)

    网络编程详解-TCP 一,TCP协议的特点              面向连接的协议(有发送端就一定要有接收端)    通过三次连接握手建立连接 通过四次握手断开连接 基于IO流传输数据 传输数据大小 ...

  6. java 网络编程-tcp/udp

    --转自:http://blog.csdn.net/nyzhl/article/details/1705039 直接把代码写在这里,解释看这里吧:http://blog.csdn.net/nyzhl/ ...

  7. python 网络编程 TCP/IP socket UDP

    TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...

  8. 五十三 网络编程 TCP/IP简介

    虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Microsoft都有各自的 ...

  9. Python中的socket网络编程(TCP/IP,UDP)讲解

    在网络编程中的一个基本组件就是套接字(socket).套接字基本上是两个端点的程序之间的"信息通道".程序可能分布在不同的计算机上,通过套接字互相发送信息.套接字包括两个:服务器套 ...

随机推荐

  1. PHP正则表达式详解

    正则表达式定义 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将匹配的子串做替换或者从某个串中取出符合某个条件的子串等. 列目录时, ...

  2. 【CentOS 6.5】 安装VNCServer及配置,注销处理

    如果没有安装VNCServer,只有在机器上登录进桌面后才可以通过VNC连接,否则连不上... 安装: yum install tigervnc-server   运行并设置密码: vncserver ...

  3. sysbench基准测试工具使用

    1.源码编译安装 源码下载地址(目前有0.4/0.5/1.0三个分支版本):https://github.com/akopytov/sysbench 编译安装: unzip sysbench-1.0. ...

  4. IIS Manager 配置文件修该,允许跨域CORS访问

    IIS Manager 配置文件修该,允许跨域CORS访问 IIS Manager 的api访问会出现跨域问题,需要 IIS Manager的配置文件中修改. 配置文件的路径:C:\Program F ...

  5. Subversion Self Signed Certificates

    When connecting to Subversion repositories using SSL connections the SVN client checks the server ce ...

  6. JAVA_01

    Java局部变量 局部变量声明在方法.构造方法或者语句块中: 局部变量在方法.构造方法.或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁: 访问修饰符不能用于局部变量: 局部变量只在声明它 ...

  7. java tomcat报错: Starting Tomcat v7.0 Server at localhost' has encountered a problem问题

    运行web项目的时候出现下面错误: 出现这个问题的原因是 这个tomcat在其他项目中正在运行 关掉即可.

  8. centos6 安装 docker

    一.升级内核(带aufs模块) 1.yum安装带aufs模块的3.10内核(或到这里下载kernel手动安装:http://down.51cto.com/data/1903250) cd /etc/y ...

  9. K.O. ----- 配置文件没有提示

    ---------------siwuxie095 K.O. ----- 配置文件没有提示 1.解决方法一:联网 只要 PC 联网,配置文件中就有提示 2.解决方法二:手动导入约束文件 约束文件:hi ...

  10. 配置atom需要安装的插件

    本人是一个node后端开发,这里之记录我需要的atom插件,如果需要别的请去别处查找,也省这我自己再去找 1.atom-beautify     代码格式一键美化 2.minimap  代码小地图 3 ...