【群主】雷欧纳德
简单理解 tcpip是有通信确认的面对面通信   有打招呼的过程  有建立通道的过程 有保持通道的确认    有具体传输

udp是看到对面的人好像在对面等你 就往对面扔东西
【群主】雷欧纳德
基本上 好比从货车a  运东西到货车b   tcpip是建立人手互传的方式   
udp是 a货车里搬出的东西直接往b货车的人方向扔  你接成功没有  散架没 我扔的一方不管的

tcp管这个 ip是通道
【群主】雷欧纳德
ip是手语  高速对面 我在等你  或者我要发过来了 这一类的

【群主】雷欧纳德
然后  一次送过去多少东西  就是所谓的帧大小的问题
【群主】雷欧纳德
如果对面的人准备接受一个很大的东西你扔个很小的去   通常会造成一些空消耗

如果反过来  甚至会崩溃
【群主】雷欧纳德
你说好给小的   结果  你传了大的 对面没心里准备 直接脱手了  就是这种情况
【群主】雷欧纳德
而一些解决验证问题的方案  就是  双方都做好随机的准备   以防万一 不会再实际出现物品传输中 有脱手的情况
【群主】雷欧纳德
通信 其实本质就是这么回事了
【群主】雷欧纳德
udp  就简单了 每个包 大小最大是死的 还不大  这边很快的扔 对面适当的接  就这样
【活跃】Aice
理解挺不错的
【群主】雷欧纳德
然后  bio nio aio   大体上   bio就是你这边不管几个人 他那边就一个   也就是一次他只能接你这边一个人的东西 放好了 再接另一个人另一次传的
【群主】雷欧纳德
nio是   有个人占在前排   他负责接所有的东西 但是  他不需要找地方放 而是后面有一排人 等着  前排的这一个人  一转身就把东西交给后面随机某个人   你可以看成就好像后面的人是放东西的放东西 放好了 没事情的人 站到等着接前排东西的人 的队伍里
【群主】雷欧纳德
aio  就是前排是一圈人   而你传东西的自然也是一些人  这样  比如aio的一排站了20个人   你传东西的很多人就随机交给一个站在前排的人

这时候 如果前排的人  离开位置  去放东西  就是普通的aio   
如果这个人或者说这排人后面跟nio一样 还有一排人专门干接前排这20个人的转身后放手掉下来的东西  然后后排这些人去放

这就是aio后异步了 
 
注:这里  对tcpip udp的描述 比较粗 可能不绝对正确  只是胡邹一下 但是  三io方式的描述  很符合现实的

拿搬东西来解释udp tcpip bio nio aio aio异步的更多相关文章

  1. IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别参考

    参考https://www.cnblogs.com/aspirant/p/6877350.html?utm_source=itdadao&utm_medium=referral IO复用,AI ...

  2. Java BIO NIO 与 AIO

    回顾 上一章我们介绍了操作系统层面的 IO 模型. 阻塞 IO 模型. 非阻塞 IO 模型. IO 复用模型. 信号驱动 IO 模型(用的不多,知道个概念就行). 异步 IO 模型. 并且介绍了 IO ...

  3. BIO,NIO与AIO的区别

    Java NIO : 同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理.Java AIO(NIO.2 ...

  4. Java的BIO,NIO和AIO的区别于演进

    作者:公众号:我是攻城师 前言 Java里面的IO模型种类较多,主要包括BIO,NIO和AIO,每个IO模型都有不一样的地方,那么这些IO模型是如何演变呢,底层的原理又是怎样的呢? 本文我们就来聊聊. ...

  5. IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别(百度)

    如果面试问到IO操作,这篇文章提到的问题,基本是必问,百度的面试官问我三个问题 (1)什么是NIO(Non-blocked IO),AIO,BIO (2) java IO 与 NIO(New IO)的 ...

  6. (转)IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别

    本文来自:https://www.cnblogs.com/aspirant/p/6877350.html?utm_source=itdadao&utm_medium=referral,非常感谢 ...

  7. IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别

    一.什么是socket?什么是I/O操作? 我们都知道unix(like)世界里,一切皆文件,而文件是什么呢?文件就是一串二进制流而已,不管socket,还是FIFO.管道.终端,对我们来说,一切都是 ...

  8. 关于BIO NIO和AIO的理解

    转载自 :http://blog.csdn.net/anxpp/article/details/51512200 1.BIO编程 1.1.传统的BIO编程 网络编程的基本模型是C/S模型,即两个进程间 ...

  9. 从Socket入门到BIO,NIO,multiplexing,AIO

    Socket入门 最简单的Server端读取Client端内容的demo public class Server { public static void main(String [] args) t ...

随机推荐

  1. html元素的显示和隐藏

    div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白: style="visibility: hidden;" document.getElementBy ...

  2. [jQuery]《锋利的jQuery》插件部分总结

    /** * <锋利的jQuery>插件部分总结 * * jQuery插件推荐命名:jquery.name.js * * $.fn.extend用于封装对象方法的插件 * $.extend用 ...

  3. BloomFilter–大规模数据处理利器(转)

    BloomFilter–大规模数据处理利器 Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法.通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求1 ...

  4. nbIoT基础概念

    1. 物理信道(L1与L2之间) 上行:PRACH.PUSCH 下行:PBCH.PDCCH.PDSCH 2.逻辑信道(L2与L3之间) CCCH.DCCH.DTCH 3.信令(L3与NAS层之间) D ...

  5. [Flex] IFrame系列 —— 在flex的web应用中嵌入html的方法

    在flex的web应用中,我们往往必须有嵌入html的需求,这时候你会发现IFrame很有用! flex而且可以和html中的JavaScript进行交互,flex可以通过iframe调用到html中 ...

  6. java中传递数组的写法

    var arr=["110","120","119"]; //如果浏览器不支持JSON,就使用json2.js,json2.js的源码放在最 ...

  7. [转载]python中将普通对象作为 字典类(dict) 使用

    目前我知道的有两种方法: 1 定义的类继承dict类 例如 class A(dict): pass a = A() a['name'] = 12 2 给自定义的类添加 __setitem__() __ ...

  8. 100. Same Tree(Tree)

    /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * Tre ...

  9. 查看用户的SQL执行历史

    程序开发少不来SQL,基本都是基于SQL开发,程序仅仅起一个流程控制的作用.但是数据库本身存在许多内置的视图或者内置的表,如果打算研究SQL执行的效率已经SQL执行的历史记录,通过这些视图可以知道. ...

  10. struts2+hibernate+poi导出Excel实例

    本实例通过struts2+hibernate+poi实现导出数据导入到Excel的功能 用到的jar包: poi 下载地址:http://poi.apache.org/ 根据查询条件的选择显示相应数据 ...