拿搬东西来解释udp tcpip bio nio aio aio异步
简单理解 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后异步了
拿搬东西来解释udp tcpip bio nio aio aio异步的更多相关文章
- IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别参考
参考https://www.cnblogs.com/aspirant/p/6877350.html?utm_source=itdadao&utm_medium=referral IO复用,AI ...
- Java BIO NIO 与 AIO
回顾 上一章我们介绍了操作系统层面的 IO 模型. 阻塞 IO 模型. 非阻塞 IO 模型. IO 复用模型. 信号驱动 IO 模型(用的不多,知道个概念就行). 异步 IO 模型. 并且介绍了 IO ...
- BIO,NIO与AIO的区别
Java NIO : 同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理.Java AIO(NIO.2 ...
- Java的BIO,NIO和AIO的区别于演进
作者:公众号:我是攻城师 前言 Java里面的IO模型种类较多,主要包括BIO,NIO和AIO,每个IO模型都有不一样的地方,那么这些IO模型是如何演变呢,底层的原理又是怎样的呢? 本文我们就来聊聊. ...
- IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别(百度)
如果面试问到IO操作,这篇文章提到的问题,基本是必问,百度的面试官问我三个问题 (1)什么是NIO(Non-blocked IO),AIO,BIO (2) java IO 与 NIO(New IO)的 ...
- (转)IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别
本文来自:https://www.cnblogs.com/aspirant/p/6877350.html?utm_source=itdadao&utm_medium=referral,非常感谢 ...
- IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别
一.什么是socket?什么是I/O操作? 我们都知道unix(like)世界里,一切皆文件,而文件是什么呢?文件就是一串二进制流而已,不管socket,还是FIFO.管道.终端,对我们来说,一切都是 ...
- 关于BIO NIO和AIO的理解
转载自 :http://blog.csdn.net/anxpp/article/details/51512200 1.BIO编程 1.1.传统的BIO编程 网络编程的基本模型是C/S模型,即两个进程间 ...
- 从Socket入门到BIO,NIO,multiplexing,AIO
Socket入门 最简单的Server端读取Client端内容的demo public class Server { public static void main(String [] args) t ...
随机推荐
- sparkStreaming与Kafka整合
createStream那几个参数折腾了我好久..网上都是一带而过,最终才搞懂..关于sparkStreaming的还是太少,最终尝试成功... 首先启动zookeeper ./bin/zookeep ...
- PLSQL_Oracle物化视图Material View的基本概念和用法 (概念)
2014-06-08 Created By BaoXinjian
- alpha融合
//alpha融合 //作者:sandy //时间:2015-10-6 //将一只狗的头像融合在蜗牛头上 #include <cv.h> #include <highgui.h> ...
- Linux命令(16)压缩,解压文件
tar: 简介:tar命令只是把目录打包成一个归档(文件),并不负责压缩.在tar命令中可以带参数调用gzip或bzip2压缩.因为gzip和bzip2只能压缩单个文件. 在linux下是不需要后缀名 ...
- java学习日志(1):命令行and小程序
1.dos命令行,常见的命令 dir:列出当前目录下的文件以及文件夹md:创建目录rd:删除目录(必须空)cd:进入指定目录cd.. :退回到上一级目录cd/:退回到根目录del:删除文件exit:退 ...
- 跨浏览器复制神器 ZeroClipboard 2.x快速入门详解
有些时候,我们希望让用户在网页上完成某个操作就能自动将指定的内容复制到用户计算机的剪贴板中.但是出于安全原因,大多数现代浏览器都未提供通用的剪贴板复制接口(或即便有,也默认被禁用).只有IE浏览器可以 ...
- LInux SSH远程文件/目录传输命令scp(转载)
From:http://www.vpser.net/manage/scp.html 相信各位VPSer在使用VPS是经常会在不同VPS间相互备份数据或转移数据.一般情况下VPS都已安装了Ngnix或者 ...
- wcf使用task实现异步调用
private async void btnGetEmployees_Click(object sender, RoutedEventArgs e) { txtInfo.Text = "Da ...
- .NET 验证码/验证图片
/// <summary> /// 验证码类 /// </summary> public class Rand { #region 生成随机数字 /// <summary ...
- 认识与学习BASH(中)
1.在设置变量中:单引号与双引号的最大不同:双引号能保有变量的内容,单引号仅能是一般字符 2.反单引号(`)作用:在一串指令中,在‘之内的指令将会被先执行,其结果将作为外部的输入信息. locate指 ...