OSI 与 TCP/IP 网络的实际影响
我应该设置一个“基于地理位置”的 ipv6 无线网状网络以在 google android 上运行。
我发现似乎是一个支持网格划分的好应用程序: http://www.open-mesh.net/wiki/batman-adv
“蝙蝠侠高级是一种新方法 无线网络,不 不再在IP基础上运作。 不像 蝙蝠侠,交换 使用 UDP 数据包和集的信息 路由表,蝙蝠侠高级 仅在 ISO/OSI 第 2 层上运行并且 用途和路线(或者更好:桥梁) 以太网帧。 它模拟了一个虚拟的 所有节点网络切换 参与。 因此所有节点 似乎是本地链接,因此所有 更高的操作协议不会 受到任何变化的影响 网络。 您几乎可以运行任何 协议高于 BATMAN Advanced, 突出的例子有:IPv4、IPv6、 DHCP、IPX。”
但我团队中的其他成员表示这是不行的,因为它在 OSI 上运行,而不是 TCP/IP。这是我第一次听说 OSI,我想知道它有多少问题是什么?对于可以在其上开发的网状网络应用程序有什么影响?考虑到Android相对较新,我们不需要太担心与现有应用程序的兼容性,所以这很重要吗
?我没有花很多时间与网络打交道,所以请用菜鸟术语来说。
I'm supposed to be setting up a 'geolocation based', ipv6, wireless mesh network to run on google android.
I found what seems to be a good app to support the meshing:
http://www.open-mesh.net/wiki/batman-adv
"Batman-advanced is a new approach to
wireless networking which does no
longer operate on the IP basis. Unlike
B.A.T.M.A.N, which exchanges
information using UDP packets and sets
routing tables, batman-advanced
operates on ISO/OSI Layer 2 only and
uses and routes (or better: bridges)
Ethernet Frames. It emulates a virtual
network switch of all nodes
participating. Therefore all nodes
appear to be link local, thus all
higher operating protocols won't be
affected by any changes within the
network. You can run almost any
protocol above B.A.T.M.A.N. Advanced,
prominent examples are: IPv4, IPv6,
DHCP, IPX."
But other members in my team has said it's a no-go because it operates on OSI, rather than TCP/IP. This was the first I'd heard of OSI, and I'm wondering how much of a problem this is? What are the implications for mesh network apps that can be developed on top of it? Considering the android is relatively new, we don't need to worry too much about compatibility with existing apps, so does it matter?
I haven't spent a lot of time working with networks, so please put in noobmans terms.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
“您可以运行 BATMAN Advanced 之上的几乎任何协议,突出的例子包括:IPv4、IPv6、DHCP、IPX。”
“但是我团队中的其他成员表示这是不行的,因为它运行在 OSI 上,而不是 TCP/IP 上。”
你们团队中的其他成员对《蝙蝠侠》中的流行语感到困惑。
TCP/IP 的“IP”是 IPv4(或 IPv6)。 所以BATMAN直接且完全支持TCP/IP。
不存在任何形式的冲突。 只是混乱。
"You can run almost any protocol above B.A.T.M.A.N. Advanced, prominent examples are: IPv4, IPv6, DHCP, IPX."
"But other members in my team has said it's a no-go because it operates on OSI, rather than TCP/IP. "
The other members in your team are confused by the buzzword-fest in BATMAN.
The "IP" of TCP/IP is IPv4 (or IPv6). So BATMAN supports TCP/IP directly and completely.
There's no conflict of any kind. Just confusion.
他们可能指的是 OSI 模型,这是区分网络和网络的常用方法。层。 我不确定这是否是一种有用的看待事物的方式,但地球上的每一门网络课程都会教授它。
OSI 级别 2 是数据链路层,它直接在实际物理级别之上运行。 基本上,它负责流量控制、错误检测以及可能的错误纠正。 数据链路层是严格的“单跳”。 它只关心点对点数据传输,而不关心多跳传输或路由。
如果他们实际上引用的是 OSI 网络协议本身,请尽快尖叫。 OSI 是出了名的难以实施,而且我从未听说过实际安装的情况。 请参阅维基百科文章了解血淋淋的细节。
They're probably referring to the OSI model, which is a commonly-used way of distinguishing between network layers. I'm not sure it's a useful way of looking at things, but it's taught in every networking course on the planet.
OSI level 2 is the data link layer, which operates immediately above the actual physical level. Basically, it's in charge of flow control, error detection, and possibly error correction. The data link layer is strictly "single hop". It's only concerned about about point-to-point data transfers, not about multi-hop transfers or routing.
If they're actually referring the OSI networking protocal itself, run screaming as fast as you can. OSI was notoriously hard to implement, and I've never heard of an actual working installation. See the Wikipedia article for the gory details.
OSI 模型和 OSI 协议是不同的。
OSI 模型是一种分解事物的方法:物理、链路、网络、传输、会话、表示、应用程序。 OSI 协议是直接映射到模型中这些层的协议实现。
模型是一种看待事物的方式。 它在很大程度上是有道理的,但在更高的层次上它就崩溃了。 例如:表示层的真正作用是什么?
在 90 年代,OSI(在某些圈子里)被认为是未来,但实际上导致了一些公司的垮台,并浪费了许多其他公司的资源。 例如,DECnet 第五阶段是 Digital 极其复杂的 OSI 堆栈实现,它满足政府 OSI 要求,但被 TCP/IP 压路机碾压。
测试是:线路上有多少字节? 在本例中,它是基于 IP 的 UDP,而不是等效的 OSI(即 CLNP)。
话虽如此,如果它是第二层协议,它可能会存在可扩展性问题,因为它是第二层协议。 对于少量节点来说这很好,但如果您想扩大规模,则需要更好的解决方案。
The OSI model and the OSI protocols are different.
The OSI model is a way of breaking things down: physical, link, network, transport, session, presentation, application. OSI protocols are protocol implementations that map directly to those layers in the model.
The model is a way of looking at things. It mostly makes sense, but it breaks down at the higher levels. For example: what does a presentation layer really do?
During the '90s, OSI was (in some circles) thought to be the future, but was actually the downfall of some companies, and wasted the resources of many others. For example, DECnet Phase V was Digital's insanely complex implementation of an OSI stack that met government OSI requirements, but was run over by the TCP/IP steamroller.
The test is: What are the bytes on the wire? In this case it is UDP over IP, not the OSI equivalent, which was CLNP.
Having said all that, if it is a layer two protocol, it will probably have scalability problems because it is a layer two protocol. Fine for a small number of nodes, but if you're trying to get scale, you need a better solution.
“ISO/OSI 第 2 层”并不意味着 OSI 协议。 它指的是网络堆栈的“七层”模型。 它指的是数据链路层。
这些层是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
"ISO/OSI Layer 2" does not mean the OSI protocols. It refers to the "Seven Layer" model of network stacks. It means the Data Link layer.
The layers are: Physical, Data Link, Network, Transport, Session, Presentation, Application.
OSI 是一个模型,而不是像 IP 和 TCP 那样的协议。 您的团队似乎在说网格不会使用 IP。 我怀疑他们是错误的,因为您引用的文本指出 BATMAN 协议能够支持 IP 和 IP 协议。 IPv6,如果是这种情况,您需要一个非常充分的理由才能使用其他任何东西。
OSI is a model not a protocol like IP and TCP. What your team seem to be saying is that the mesh won't be using IP. I suspect they are wrong as the text you have quoted states the BATMAN protocol is capable of supporting IP & IPv6 and if that is the case you'd need a very strong reason to use anything else.