本学习笔记TCP/IP传输协议
.png)
- 面向有连接型
面向有连接型中,在发送数据之前,须要在收发主机之间连接一条通信线路
面向有连接型就好比人们寻常打电话,输入完对方电话号码拨出之后。仅仅有 对端拿起电话才干真正通话,通话结束后将电话机扣上就如同切断电源。因此在 面向有连接的方式下,必须在通信传输前后。专门进行建立和断开连接的处理。
假设与对端之间无法通信,就能够避免发送无谓的数据。
- 面向无连接型
面向无连接型则不要求建立和断开连接。发送端可于不论什么时候自由发送数据。反之。接收端也永远不知道自己会在何时从哪里收到数据。
因此,在面向无连接的情况下,接收端须要时常确认是否收到了数据。
这就如同人们去邮局寄包裹一样。负责处理邮递业务的营业员。不须要确认 收件人的具体地址是否真的存在,也不须要确认收件人能否收到包裹,仅仅要发 件人有一个寄件地址就能够办理邮寄包裹的业务。
面向无连接通信与电话通信不同。它不须要拨打电话、挂掉电话之类的处理。而是全凭发送端自由地发送自己想要传递出去的数据。
因此,在面向无连接的通信中。不须要确认对端是否存在。即使接收端不存在或无法接收数据,发送端也能将数据发送出去。
)
眼下,网络通信方式大致分为两种一电路交换和分组交换。电路交换技术的历史相对久远,主要用于过去的电话网。而分组交换技术则是一种较新的通信 方式。从20世纪60年代后半叶才開始逐渐被人们认可。本书着力介绍的TCP/ IP,正是採用了分组交换技术。
在电路交换中,交换机主要负责数据的中转处理。
计算机首先被连接到交换机 上,而交换机与交换机之间则由众多通信线路再继续连接。因此计算机之间在发送 数据时,须要通过交换机与目标主机建立通信电路。我们将连接电路称为建立连 接。建立好连接以后。用户就能够一直使用这条电路,直到该连接被断开为止。
假设某条电路仅仅是用来连接两台计算机的通信线路,就意味着仅仅需在这两台 计算机之间实现通信,因此这两台计算机是能够独占线路进行传输数据的。
可是, 假设一条电路上连接了多台计算机,而这些计算机之间须要相互传递数据。就会 出现新的问题。鉴于一台计算机在收发信息时会独占整个电路。其它计算机仅仅能 等待这台计算机处理结束以后才有机会使用这条电路收发数据。
而且在此过程中,谁也无法预測某一台计算机的传输数据从何时開始又在何时结束。假设并发用户数超过交换机之间的通信线路数,就意味着通信根本无法实现。为此。人们想到了一个新的方法,即让连接到通信电路的计算机将所要发送的数据分成多个数据包,依照一定的顺序排列之后分别发送。
这就是分组交换。 有了分组交换,数据被细分后,全部的计算机就能够一齐收发数据,这样也就提高了通信线路的利用率。因为在分组的过程中。已经在每一个分组的首部写入了发 送端和接收端的地址,所以即使同一条线路同一时候为多个用户提供服务,也能够明白区分每一个分组数据发往的目的地。以及它是与哪台计算机进行的通信。
.png)
在分组交换中,由分组交换机(路由器)连接通信线路。分组交换的大致处 理过程是:发送端计算机将数据分组发送给路由器,路由器收到这些分组数据以 后。缓存到自己的缓冲区,然后再转发给目标计算机。
因此,分组交换也有还有一 个名称:蓄积交换。
路由器接收到数据以后会依照顺序缓存到对应的队列其中,再以先进先出的 顺序将它们逐一发送出去
在分组交换中。计算机与路由器之间以及路由器与路由器之间通常仅仅有一条通信线路。因此,这条线路事实上是一条共享线路。在电路交换中,计算机之间的传输速度不变。然而在分组交换中,通信线路的速度可能会有所不同。
依据网络拥堵的情况,数据达到目标地址的时间有长有短。另外。路由器的缓存饱和或溢出时。甚至可能会发生分组数据丢失、无法发送到对端的情况。
.png)
版权声明:这篇文章的博客(http://blog.csdn.net/yelangjueqi)原创文章。博客,未经同意,不得转载。
本学习笔记TCP/IP传输协议的更多相关文章
- Linux学习(1)- TCP/IP网络协议基础
Linux学习(1)- TCP/IP网络协议基础 一.TCP/IP 简介 学习内容 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输 ...
- tcp/ip学习笔记-TCP
tcp/ip学习笔记-TCP 彭会锋 报文发送采用的是tcp_output函数,
- TCP/IP四层协议模型与ISO七层模型
TCP/IP四层协议模型与ISO七层模型 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中上帝打乱了各地人的口音,让他 ...
- TCP/IP网络协议基础
实验楼学习网络协议传送门 一.TCP/IP简介 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输控制协议和网络协议的简称,它定义了电 ...
- 对TCP/IP网络协议的深入浅出归纳
前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...
- 转:对TCP/IP网络协议的深入浅出归纳
转自:http://blog.jobbole.com/74795/ 前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没 ...
- 对TCP/IP网络协议的深入浅出归纳(转)
前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...
- TCP/IP网络协议的通俗理解,SOCKET,HTTP,SOAP
TCP/IP,HTTP,SOAP等协议之区别 术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议.“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络.把IP想 ...
- 计算机网络【1】—— OSI七层协议和TCP/IP四层协议
新开一贴,专门用来记录计算机网络相关知识. 一.OSI七层协议 物理层.数据链路层.网络层.传输层.会话层.表示层.应用层 二.TCP/IP四层协议 网络接口层.网际层.运输层.应用层 三.五层协议 ...
随机推荐
- 【转】Jython简单入门
1. 用Jython调用Java类库 第一步.创建Java类 写一个简单的Java类,用Point来示例: import org.python.core.*; public class Point e ...
- Cocos2d-x 3.2 大富翁游戏项目开发-第八部分 角色的散步路径
获得所述路径之后.我们将能够使根据的步行路径的作用,当您点击gobutton什么时候.我们呼吁player的startGo()办法.传入的参数是保存路径2一维数组 void GameBaseScene ...
- ACM字符串处理算法经典:字符串搜索
语法:result=strfind(char str[],char key[]); 参数: str[]:在这个源字符串查找操作 key[]:搜索字符串.不能为空字符串 回报值: 假设查找成功. ...
- 学习笔记之TCP/IP协议的重要性
1. 随处可见的协议 在计算机网络与信息通信领域里,人们常常提及"协议"一词.互联网中常 用的具有代表性的协议有IP.TCP.HITP等. 而LAN(局域网)中经常使用的协 ...
- 谈论高并发(十二)分析java.util.concurrent.atomic.AtomicStampedReference看看如何解决源代码CAS的ABA问题
于谈论高并发(十一)几个自旋锁的实现(五岁以下儿童)中使用了java.util.concurrent.atomic.AtomicStampedReference原子变量指向工作队列的队尾,为何使用At ...
- 【LeetCode从零单排】No15 3Sum
称号 Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all ...
- 【SSH2(理论+实践)】--Hibernate步步(一个)
前几个博客讨论SSH2该框架Struts,它代表层,集成封装.和使用WebWork作为核心处理,依赖映射是它的处理核心.在使用时需要Struts.xml配置相应Action和Interceptor够完 ...
- linux网络编程投票
投票系统 1.说明: 写了一个投票系统.过程是先配置好server,在写一个网上投票功能.要实现网上投票功能. 事实上功能实现还是非常easy的,麻烦一点的在于过程比較繁杂,要做的东西还是挺多的. 2 ...
- Flux是一个Facebook团队的前端开发架构
Flux是一个Facebook团队的前端开发架构 Flux introduction 本文组成: React 官方文档翻译 相关实践心得. 内容上是Flux的介绍,例子将会在以后写出.一旦稍微多了解一 ...
- 正则获取URL参数
一 获取指定URL参数 function getUrlParams(name) { var reg = new RegExp("(^|&)" + name + " ...