惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
D
Docker
Blog — PlanetScale
Blog — PlanetScale
罗磊的独立博客
美团技术团队
V
V2EX
Last Week in AI
Last Week in AI
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Microsoft Security Blog
Microsoft Security Blog
Microsoft Azure Blog
Microsoft Azure Blog
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
P
Proofpoint News Feed
B
Blog RSS Feed
博客园_首页
B
Blog
博客园 - 叶小钗
I
InfoQ
WordPress大学
WordPress大学
L
LangChain Blog
Apple Machine Learning Research
Apple Machine Learning Research
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
About on SuperTechFans
The GitHub Blog
The GitHub Blog
The Register - Security
The Register - Security
MyScale Blog
MyScale Blog
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
Latest news
Latest news
W
WeLiveSecurity
T
The Exploit Database - CXSecurity.com
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
aimingoo的专栏
aimingoo的专栏
小众软件
小众软件
Cyberwarzone
Cyberwarzone
Scott Helme
Scott Helme
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
CERT Recently Published Vulnerability Notes
C
CXSECURITY Database RSS Feed - CXSecurity.com
Recent Commits to openclaw:main
Recent Commits to openclaw:main
N
News and Events Feed by Topic
S
Secure Thoughts
The Hacker News
The Hacker News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News

博客园 - 星星之火

Writing own regular expression parser How Regexes Work Content Based Routing Web Services in .NET and J2EE Poly-Engine Crypt String 绝不因寂寞而爱上别人 比尔·盖茨给青年一代的11点忠告 在.Net环境下用C#操纵活动目录 - 星星之火 - 博客园 谁能简单说一下活动目录是什么东西? 两毛钱爽一把 可以建立一个Udp Server,接收发往本机所有端口的数据包吗? 广播,多播(一)(Broadcasting, Multicasting) C#异步网络编程 应该由国家建立非法网站数据库 use Helper Classes to simplify you network programming a udp echo client a udp echo server xml digital signature when udp goes bad and how to solve it(C#) when tcp goes bad, and how to solve it
广播,多播(二)(Broadcasting, Multicasting)
星星之火 · 2004-06-27 · via 博客园 - 星星之火

多播(组播)

广播的一个缺点就是,会影响到所有的子网内的计算机,即使对此广播消息不感兴趣的计算机。多播可以解决这个问题。

多播采用推进技术(浏览网页属于拉拔技术,同样属于推进技术的有发送Email服务)。多播也叫组播,如果用户加入某个多播组,那么,它就能够收到发往这个组的数据。

组播应用DIP地址(224.0.0.0-239.255.255.255),但不是说从每个组播的组接收数据的计算机要具有DIP地址。组播的组需要DIP地址来标示。DIP地址分成几断,某些具有特殊用途。

组播有两种应用模式。一种是一个组中的任意一个用户发信息,其余用户都能够接收,各个用户的地位是等价的。另一种是只一个用户发信息,其余用户只负责接收信息。

组播的拓扑结构是一个树状结构。

组播需要支持组播的硬件,支持组播的Tcp/ip协议栈,支持组播的软件。加入离开一个组播组需要用到SGMPSimple Group Management Protocol)协议。发送组播信息还有一个TTL(Time To Live)值,使组播信息不会穿过很多的子网边界,默认TTL值是1,即只对本地子网有效。

C#对组播的支持

组播编程需要Udp,有两个类支持组播网络编程Socket,UdpClient.一台计算机要加入某一个组,接收发往某个组的信息。Socket类要调用SetSocketOption函数加入和离开某一个组。UdpClient类有直接的加入和离开某个组的成员函数可以调用。而向某个组发信息,则没有什么特殊的,只需把发送数据的目的地址设为组播地址就可以了。

问题:

问:一个Udp Server加入某个组播组,然后绑定某个端口,开始接收数据,能接收到哪些数据?

答:可以接收到发往这个组播组这个端口的数据,可以接收到发往这个端口的广播数据,可以接收到专门发往这个端口的单播数据。

问:(1)怎样知道自己周围组播的组的情况(DIP地址被占用的情况)?(2)自己可否只是通过编程就建立一个组播组?(没有找到资料)

答:(1)还不知道。(2)(不太明白详细具体情况)。是可以的,一个Socket往一个固定的组播地址的端口发送数据,那么一个组播的组就建立起了,其余计算机可以加入此地址标示的组,接收信息。(当然,需要硬件软件协议支持。另外对此组播地址的值也有限制,组播地址也有类似于192.168.0.0网络地址的,只用于局域网,不路由的地址)

(对于多播了解还不是很透彻,为了接上一篇。只为记录学习过程,可能有错误,欢迎讨论)