TCP/IP协议与OSI协议
OSI协议是一个理想化的协议,它把网络传输过程分为七层模型,以达到形象化的理解的效果,在实际应用中没有被使用。TCP/IP协议可以看作是它的简化版,是目前应用最广泛的网络协议,许多协议都是以它为基础而开发出来的,是目前网络运行的基石。
实例讲解:在西班牙有一个商人,想把葡萄酒运到罗马去销售。让我们来一起看看整个贸易的过程。贸易中的货物——葡萄酒,我们可以类比为网络中要传输的数据。如何把葡萄酒,也就是数据,运输到另外一个目的地去,这就是我们要关注的问题。
1、零散的货物,如何运输?
2、包装箱上的标签和说明,是否需要?是否要翻译成多国语言?
3、运输前双方的沟通是否需要?
4、运输的路途上是否要保证货物的安全?保证货物不会遗失?
5、是否需要选择一条合理的、符合当时情况的路径送货?
6、在准备送货出门前是否需要检查自己的货物是否拿错?
7、检查正确后,运输的过程就按着选择好的路径去走。
OSI 与TCP/IP协议的比较
OSI协议 |
TCP/IP协议 |
||||
层名 |
描述 |
举例: 在西班牙有一个商人,想把葡萄酒运到罗马去销售。 |
层名 |
描述 |
对应的服务 |
应用层 |
直接面向用户应用,为用户提供对各种网络资源方便的访问服务。 |
商人需要妥当的包装自己的货物 |
应用层 |
应用层负责处理特定的应用程序TCP/IP提供了大量的应用程序,下面几种是最为通用的:WWW 国际互联网、Telnet远程登录、FTP 文件传输协议、SMTP 用于电子邮件的简单邮件传输协议、SNMP 简单网络管理协议。 |
WWW、SMTP、FTP、Telnet、Gopher、SNMP Socket、NetBIOS |
表示层 |
定义用户或应用程序之间的交换数据的格式,提供数据表示之间的转换服务 |
在包装箱上,商人需要贴上标签,说明箱子里是何种货物,同时按需要可以翻译成多国语言 |
|||
会话层 |
在传输层的基础上增加控制会话的机制,建立、组织和协调应用程序之间的交互过程。完成通信进程的逻辑名字和物理名字间的对应。(用户验证在此层完成) |
在运输前需要一个事先的沟通,准备开始运输。 |
|||
传输层 |
提供源节点与目的节点之间的端对端可靠传输服务,有别于网络层 |
提前做好保护措施,以保证运输途中的安全。 |
传输层 |
主要功能是为两台主机上的应用程序提供端到端的通信。在TCP/IP协议组件中,有两个互不相同的传输协议:TCP(传输控制协议,是基于连接的)和UDP(用户数据报协议,是基于非连接的)。 |
TCP、UDP TCP类似于打电话,可靠。 |
网络层 |
为传输层实体提供端到端得交换网络数据传送功能,负责将源报文通过中间转发节点传送到目的主机。 功能:提供虚电路和数据报两种分组传输服务、分组转发和路由更新、拥塞控制。 |
选择一条合适的路径 |
网络层 |
也叫互联网层,处理路由选择等分组在网络中的活动。在TCP/IP协议组件中,网络层协议包括IP协议(Internet Protocol,网际协议)、ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。 |
IP(ARP、RARP、ICMP) |
数据链路层 |
负责在单个链路上的节点间传送以帧(物理上对应虚存中的页)为单元的数据。 |
运输前的最后检查,做好准备 |
网络接口层 |
也叫数据链路层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,它们一起处理与传输媒介的物理接口细节。上表中TCP/IP协议没有相应的层次对应OSI七层模型中的物理层,正是因为TCP/IP协议的这种特性,使得其构筑的Internet被广泛的应用。 |
Ethernet、X.25、PPP、SLIP |
物理层 |
向上一层(数据链路层)提供物理链路,规定链接物理媒体的网络接口的机械、电气、功能和过程方面的特性。 |
商人走上选择好的路径,把货物运过去, |
说法一: 两种模型的具体差异,其中显而易见的差异是两种模型的层数不一样:
ISO/OSI层,而TCP/IP模型只有4层。两者都有网络层、传输层和应用层,但其他层是不同的。两者的另外一个差别是有关服务类型方面。ISO/OSI模型的网络层提供面向连接和无连接两种服务,而传输层只提供面向连接服务。TCP/IP模型在网络层只提供无连接服务,但在传输层却提供两种服务。
综上所述,使用ISO/OSI模型(去掉会话层和表示层)可以很好地讨论计算机网络,但是OSI协议并未流行。TCP/IP模型正好相反,其模型本身实际上并不存在,只是对现存协议的一个归纳和总结,但TCP/IP协议却被广泛使用。
1.TCP/IP是OSI协议的实体化。目前没有网络能够完成OSI协议,所有网络都是按照TCP/IP协议建立的。2.OSI是先有模型;TCP/IP则是先有协议,后有模型。
3.OSI适用于各种协议栈,是一种标准的模型;TCP/IP只适用于TCP/IP网络。
4.他们的层数不同。
说法二 :
1) TCP/IP一开始就考虑到多种异构网的互联问题,并将网际协议IP作为TCP/IP的重要组成部门。但ISO最初只考虑到使用一种标准的公用数据网将各种不同的系统互联在一起。
2) TCP/IP一开始就对面向连接各无连接并重,而OSI在开始时只强调面向连接服务。
3) TCP/IP有较好的网络管理功能,而OSI到后来才开始这个问题,在这方面两者有所不同。
相同之处:1丶两者都以协议栈的概念为基础 2丶协议栈中协议彼此相互独立
不同之处:1丶OSI参考模型明确了服务,接口和协议3个概念 2丶OSI参考模型是在协议发明之前就产生的,而TCP/IP模型是在协议后出现的。TCP/IP模型只是这些己有协议的一个描述而己。3丶层次的数目不同(OSI参考模型有7层,TCP/IP模型只有4层,它们都有网络层丶传输层和应用但其它的层不同)
TCP/IP协议与OSI协议的更多相关文章
- TCP/IP协议和OSI协议
作为一个与网络密切相关的Web前端工程师,TCP/IP和OSI模型不可不知,至少要知道一下这些常识性知识,在这我做一下记录 TCP/IP协议簇: TCP/IP是一组协议的代名词,包括许多别的协议,组成 ...
- TCP/IP,HTTP,SOAP等协议之区别
术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议.“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络.把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到 ...
- 08_使用TCP/IP Monitor监视SOAP协议
[SOAP定义] SOAP 简单对象访问协议,基于http传输xml数据,soap协议体是xml格式.SOAP 是一种网络通信协议SOAP 即Simple Object Access Pr ...
- 使用TCP/IP Monitor监视Soap协议
什么是soap? soap,简单对象访问协议,基于http传输xml数据,soap协议体是xml格式. SOAP 是一种网络通信协议 SOAP即Simple Object Access Protoco ...
- 计算机网络(二),TCP/IP四层模型常见协议
目录 1.应用层协议 2.传输层协议 3.网络层协议 4.链路层协议 二.TCP/IP四层模型常见协议 1.应用层协议 (1)POP3 (2)FTP (3)HTTP (4)Telnet (5)SMTP ...
- 【转】TCP/IP协议栈及OSI参考模型详解
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...
- TCP/IP协议栈及OSI参考模型详解
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...
- TCP/IP四层与OSI七层模型
OSI七层和TCP/IP四层的关系 1.1 OSI引入了服务.接口.协议.分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型. 1.2 OSI先有模型,后有协议,先有标准,后进行实 ...
- TCP/IP 协议栈及 OSI 参考模型详解
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设 ...
随机推荐
- MongoDB入门---文档查询之$type操作符&limit方法&skip方法&简单排序(sort)操作
上一篇文章呢,已经分享过了一部分查询操作了,这篇文章呢?就来继续分享哈.接下来呢我们直接看MongoDB中的$type操作符哈.它呢是基于BSON类型来检索集合中匹配的数据类型,并且返回结果,在Mon ...
- Linux getcwd()的实现
通过getcwd()可以获取当前工作目录. #include <unistd.h> char *getcwd(char *cwdbuf, size_t size); 成功调用返回指向cwd ...
- SpringBoot-03:SpringBoot+Idea热部署
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 所谓热部署,就是在项目启动中,修改class类中做的修改操作,无需重新启动项目,就可以变更,在网页展示中有 ...
- element-ui 分页注意事项
<template> <div id="monitor"> 一页显示 {{currentCount}}条 当前第 {{currentPage}}页 < ...
- L010 linux命令及基础手把手实战总结
一转眼都快两周没更新了,最近实在太忙了,这两周的时间断断续续的把L010学完了,短短的15节课,确是把前10节的课程全部的运用一遍,从笔记到整理,再到重新理解,最后发布到微博,也确实提升了一些综合性能 ...
- 第三模块:面向对象&网络编程基础 第2章 网络编程
01-计算机基础 02-什么是网络 03-五层协议详解 04-传输层详解 05-什么是Socket 06-基于socket实现简单套接字通信 07-在简单套接字基础上加上通信循环 08-客户端与服务端 ...
- 编写你自己的Python模块
其实网上Python教程挺多的,编写你自己的模块很简单,这其实就是你一直在做的事情!这是因为每一个 Python 程序同时也是一个模块.你只需要保证它以 .py 为扩展名即可.下面的案例会作出清晰的解 ...
- Django学习总结②----关系运算与F,Q关系
关联mysql步骤: 第一步:下载pymysql:pip install pymysql 第二步:在工程目录下的init文件下,将pymysql引入 import pymysql pymysql.in ...
- 理解 JavaScript 原型 / 原型链
关于对象 以下代码中 p 的值是一个新对象,里面拥有 name 和 age 属性 function People(name, age){ this.name = name this.age = age ...
- An Adaptive Color-Based Particle Filter--粒子滤波
粒子滤波跟踪的具体步骤如下: 1. Resampling the particles to avoid degeneracy 2. Propagate each particles accordin ...