linux tcp设置组播地址多客户端文件传输,TCP组播初始化仅

多点传送TCP与TCP规范不兼容。 RFC 1122 section 4.2.3.10说:

A TCP implementation MUST reject as an error a local OPEN call for an invalid remote IP address (e.g., a broadcast or multicast address).

An incoming SYN with an invalid source address must be ignored either by TCP or by the IP layer (see Section 3.2.1.3).

A TCP implementation MUST silently discard an incoming SYN segment that is addressed to a broadcast or multicast address.

的基本问题是,SYN-ACK应答的源地址必须与原始SYN数据包的目标地址相匹配 - 这是回答如何与原来的连接请求匹配(除了将目标地址与原始源地址匹配以及匹配端口号)。但为了在握手后切换到单播,您需要知道服务器的真实地址。

你可以,我想,增强协议来添加一个包含这个地址的TCP选项。或者你可以说,当SYN被发送到一个多播组时,匹配的源地址在匹配时被忽略 - 这意味着端口号本身可以唯一地定义多播连接请求。如果你对此感兴趣,也许你应该为它写一个规范,并将它提交给IETF作为协议增强。

但是已经有一些协议用于查找网络上的服务器,比如Bonjour。服务器也可以在DNS或Active Directory中列出。你的想法听起来不像是它完成了任何尚不可用的事情。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值