[Socket] AddressFamily & SocketType

PlugIn.BlueToothLE sample 走了一遍, xamarin.Forms开发andriod, ios多平台程序差不多就了解了. 对于WPF开发员转过来, 比啥都方便顺手.
可惜在对ble准备深入的是, 某大哥让先搞wifi. 好吧.
Socket 手机通信. 以前虽说做过PC, 仅限于用而已, 实际了解不深, ok, 碰到疑惑的就找来写下来, 备以后查.
感叹于地址族这么这么多, 弱水三千, 只取一瓢饮, IPV4, 其他的以后有用到再说了.
AddressFamily: InterNetwork
SocketType: Stream
ProtocolType: Tcp

AddressFamily地址组成员

成员名称说明
AppleTalkAppleTalk 地址
Atm本机 ATM 服务地址
BanyanBanyan 地址
Ccitt对于 CCITT 协议,如 X.25 地址。
ChaosMIT 混乱不堪的局面协议的地址。
Cluster针对 Microsoft 群集产品的地址。
DataKitDatakit 协议的地址。
DataLink直接链接数据接口地址。
DecNetDECnet 地址。
Ecma欧洲计算机制造商协会 (ECMA) 地址
FireFoxFireFox 地址。
HyperChannelNSC Hyperchannel 地址。
Ieee12844IEEE 1284.4 工作组地址。
ImpLink当初 ARPANET 导入地址。
InterNetworkIP 版本 4 地址。**
InterNetworkV6IP 版本 6 的地址。
IpxIPX 或 SPX 地址。
IrdaIrDA 地址。
Iso对 ISO 协议的地址。
LatLAT 地址。
Max最大地址。
NetBiosNetBios 地址。
NetworkDesigners网络设计器 OSI 网关启用的协议的地址。
NSXerox NS 协议的地址。
OsiOSI 协议的地址。
PupPUP 协议的地址。
SnaIBM SNA 地址。
UnixUnix 本地主机地址。
Unknown未知的地址族。
Unspecified未指定的地址族。
VoiceViewVoiceView 地址

MSDN中是这样的:

  • Stream 支持可靠、双向、基于连接的字节流,而不重复数据,也不保留边界。此类型的 Socket 与单个对方主机进行通信,并且在通信开始之前需要远程主机连接。Stream 使用传输控制协议 (Tcp) ProtocolType 和 InterNetworkAddressFamily。

  • gram 支持数据报,即最大长度固定(通常很小)的无连接、不可靠消息。消息可能会丢失或重复并可能在到达时不按顺序排列。Dgram 类型的 Socket 在发送和接收数据之前不需要任何连接,并且可以与多个对方主机进行通信。Dgram 使用数据报协议 (Udp) 和 InterNetworkAddressFamily。

  • Raw 支持对基础传输协议的访问。通过使用 SocketTypeRaw,可以使用 Internet 控制消息协议 (Icmp) 和 Internet 组管理协议 (Igmp) 这样的协议来进行通信。在发送时,您的应用程序必须提供完整的 IP 标头。所接收的数据报在返回时会保持其 IP 标头和选项不变。

  • Rdm 支持无连接、面向消息、以可靠方式发送的消息,并保留数据中的消息边界。RDM(以可靠方式发送的消息)消息会依次到达,不会重复。此外,如果消息丢失,将会通知发送方。如果使用 Rdm 初始化 Socket,则在发送和接收数据之前无需建立远程主机连接。利用 Rdm,您可以与多个对方主机进行通信。

  • Seqpacket 在网络上提供排序字节流的面向连接且可靠的双向传输。Seqpacket 不重复数据,它在数据流中保留边界。Seqpacket 类型的 Socket 与单个对方主机通信,并且在通信开始之前需要建立远程主机连接。

  • Unknown 指定未知的 Socket 类型。

注意:
SocketType 有时会隐式指示在 AddressFamily 中使用哪个 ProtocolType。例如,当 SocketType 为 Dgram 时,ProtocolType 始终为 Udp。当 SocketType 为 Stream 时,ProtocolType 始终为 Tcp。如果试图使用不兼容的组合创建 Socket,则 Socket 将引发 SocketException。

ProtocolType

枚举说明
IPSecAuthenticationHeaderIPv6 身份验证标头。
IPSecEncapsulatingSecurityPayloadIPv6 封装安全负载标头。
IPv4Internet 协议版本 4。
IPv6Internet 协议版本 6 (IPv6)。
IPv6DestinationOptionsIPv6 目标选项标头。
IPv6FragmentHeaderIPv6 片段标头。
IPv6HopByHopOptionsIPv6 逐跳选项标头。
IPv6NoNextHeaderIPv6 无下一个标头。
IPv6RoutingHeaderIPv6 路由标头。
IpxInternet 数据包交换协议。
ND网络磁盘协议(非正式)。
PupPARC 通用数据包协议。
Raw原始 IP 数据包协议。
Spx顺序包交换协议。
SpxII顺序包交换版本 2 协议。
Tcp传输控制协议。
Udp用户数据报协议。
Unknown未知的协议。
Unspecified未指定的协议。
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值