TCP/IP||UDP广播和多播
1.概述
广播和多播应用于UDP,TCP是一个面向连接协议,意味着分别运行与两个主机内的两进程间存在一个连接,在考虑多个主机内的共享通信网络,每个以太网帧包含源主机和目的主机以太网地址(48bit),通常以以太网帧发往单个主机,目的地指明单个接收接口,因此称单播(unicast),然而需要一个主机向网上的所有主机发送帧,只就是广播,再通过ARP和RARP发现,多播(multicast)处于单播和广播之间,帧仅属于多播组的多个主机.
该图中,网卡查看由信道传送过来的帧,确认是否收到帧,如果接收到发往设备驱动程序,网卡接收目的地址为网卡物理地址或广播地址的帧,收到目的地址为网卡物理地址或广播地址的帧.多数接口具备设置为混杂模式,这种模式可以接收到每个帧的肤质,TCPDUMP就是使用这个模式
大多数网卡经过配置都能接受到目的地址为多播地址或某些子网多播地址的帧.对于以太网,当地址的最高字节的最低位设置为1时表示地址为多播地址十六进制标示为(ff:ff:ff:ff:ff:ff:ff:ff)
如果网卡接收到帧,帧传送给设备应用程序,设备应用程序进行帧过滤,帧类型必须指定要使用的的协议,其次,多播过滤检测该主机是否属于多播地址说明的多播组
设备应用程序随后将数据传送给下一层,当帧类型指定为IP数据报时,就传往IP层,IP根据IP地址中的原地址和目的地址进行过滤检测,如果正常,将数据报传给下一层
当UDP接收到数据报时,就根据目的端口号,或者源端口号进行数据过滤,如果进程没有该端口号,则丢弃数据产生一个ICMP不可达报文.如果UDP检验到差错则丢弃
多播出现减少了处理负荷,使用多播,主机可加入一个或多个多播组.
2.广播
2.1受限的广播
广播地址为255.255.255.255,地址用于主机配置过程中IP数据报目的地址,本地地知不知道所在地址的子网掩码。routed和rwhod是向每个接口发送UDP数据报的2个应用程序,均使用相似的启动过程来确定主机的所有接口
2.2指向网络的广播
只想网络的广播地址是主机好为全1的地址,A类为netid:255.255.255.255,netid为A类网络信号.
2.3指向子网的广播
全1且特定子网号地址,作为子网直接广播地址的IP地址需要了解子网掩码
2.4指向所有子网的广播
如果目的地子网掩码为255.255.255.255,那么IP地址128.1.255.255是一个指向所有子网的广播地址,如果没有划分子网,就是一个指向网络的广播,在RFC 922种指定
3.多播
IP多播提供2种服务
1.向目的地址传送数据.
2.客户对服务器的请求
3.1多播组地址
分配的28bit地址均使用多播组号,包括1110的4bit和多播组号,通常表示为点分十进制数,范围224.0.0.0到239.255.255.255
TCP/IP||UDP广播和多播的更多相关文章
- UDP广播与多播
UDP广播与多播 使用UDP协议进行信息的传输之前不需要建议连接.换句话说就是客户端向服务器发送信息,客户端只需要给出服务器的ip地址和端口号,然后将信息封装到一个待发送的报文中并且发送出去.至于服务 ...
- socket udp广播和多播的简单实现
UDP广播与多播 作者:legend QQ:1327706646 使用UDP协议进行信息的传输之前不需要建议连接.换句话说就是客户端向服务器发送信息,客户端只需要给出服务器的ip地址和端口号,然后将信 ...
- TCP/IP网络编程之多播与广播
多播 多播方式的数据传输是基于UDP完成的,因此,与UDP服务端/客户端的实现非常接近.区别在于,UDP数据传输以单一目标进行,而多播数据同时传递到加入(注册)特定组的大量主机.换言之,采用多播方式时 ...
- TCP/IP协议---广播和多播及IGMP协议
老板找某个高层谈话,这是一对一形式.当老板叫来所有高层谈话,那么就变为了一对多.计算机网络中也是如此,当一个主机需要和更多机器对话时,就有了广播和多播这种形式. 广播和多播仅应用于UDP,它们对需将报 ...
- Socket,TCP/IP,UDP,HTTP,FTP
1.Socket:套接字,是传输层协议的一种编程API 作用:用于描述IP地址和端口,区分来自不同应用程序的通信,实现数据传输的并发服务 JDK Socket:在java.net包下有两个类Sock ...
- SOCKET,TCP/IP,UDP,HTTP,FTP总结
一.TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组(主要解决数据如何在网络中传输),可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议 ...
- udp广播和多播
使用UDP协议进行信息的传输之前不需要建立链接, 客户端向服务器发送信息时,客户端只需要给出服务器的ip地址和端口号,可以发送信息.至于服务器端是否存在,是否能够收到该报文,客户端根本不用管. 广播( ...
- android 网络编程--socket tcp/ip udp http之间的关系
网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络 ...
- .net 使用TCP模拟UDP广播通信加强广播通信的稳定性
应用场景:当每一台终端开启程序后发出消息,其他终端必须收到消息然后处理 思路1:使用UDP广播. 缺点:UDP广播信号不稳定,无法确定每一台机器能接收到信号 思路2:将一台主机作为服务器,使用 ...
随机推荐
- Flask学习之三 web表单
本部分Miguel Grinberg教程的翻译地址:http://www.pythondoc.com/flask-mega-tutorial/webforms.html 开源中国的:http://ww ...
- vue简单总结
首先 介绍几个常见指令 指令:以属性的形式出现在标签上 v-xxx 1.内置指令 数据绑定指令 v-html v-text 举例 <span v-html="msg" ...
- oracle用Where子句替换HAVING子句
避免使用HAVING子句, HAVING 只会在检索出所有记录之后才对结果集进行过滤. 这个处理需要排序,总计等操作. 如果能通过WHERE子句限制记录的数目,那就能减少这方面的开销. 例如: 低效: ...
- linux下oracle查询中文乱码
export NLS_LANG=AMERICAN_AMERICA.UTF8
- HTML的基本结构和标签分类
HTML:超文本标记语言 HTML基本结构 <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...
- java NIO之HelloWorld
Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API,以便提高传输速度.但实际上,在最新的JDK中旧的I/0包已经使用NIO重新 ...
- ant 脚本 available 及条件判断功能
1. 通过<available property="属性名" file | classname | resource = "被判定是否存在的东西" v ...
- 通过页码直接跳转 html
<?php namespace Admin\TagLib; class BootstrapPage{ public $firstRow; // 起始行数 public $listRows; // ...
- HDU 1828“Picture”(线段树+扫描线求矩形周长并)
传送门 •参考资料 [1]:算法总结:[线段树+扫描线]&矩形覆盖求面积/周长问题(HDU 1542/HDU 1828) •题意 给你 n 个矩形,求矩形并的周长: •题解1(两次扫描线) 周 ...
- 【9101】求n!的值
Time Limit: 10 second Memory Limit: 2 MB 问题描述 用高精度的方法,求n!的精确值(n的值以一般整数输入). Input 文件输入仅一行,输入n. Output ...