请输入您要查询的百科知识:

 

词条 RNDIS
释义

  1. Notes and references

  2. External links

  3. See also

{{Refimprove|date=October 2011}}

The Remote Network Driver Interface Specification (RNDIS) is a Microsoft proprietary protocol used mostly on top of USB. It provides a virtual Ethernet link to most versions of the Windows, Linux, and FreeBSD operating systems. A partial RNDIS specification is available from Microsoft, but Windows implementations have been observed to issue requests not included in that specification, and to have undocumented constraints.[1]

The protocol is tightly coupled to Microsoft's programming interfaces and models, most notably the Network Driver Interface Specification (NDIS), which are alien to operating systems other than Windows. This complicates implementing RNDIS on non-Microsoft operating systems,{{Citation needed|date=June 2018|reason=The included operating systems account for the vast majority of available operating systems. If Windows, Linux (thereby Android), and Unix (with possibility of iPhone and Mac) all support it, why is it difficult to support anywhere? The Linux variant is open source and therefore would be easy to copy.}} but Linux,[2] FreeBSD,[3] NetBSD[4] and OpenBSD[5] implement RNDIS natively.

The USB Implementers Forum (USB-IF) defines at least three non-proprietary USB communications device class (USB CDC) protocols with comparable "virtual Ethernet" functionality; one of them (CDC-ECM) predates RNDIS and is widely used for interoperability with non-Microsoft operating systems, but does not work with Windows.

Some versions of Android include RNDIS USB functionality, while more recent versions (such as Nexus 6P in September 2016) do not.{{Citation needed|date=April 2018}}

Notes and references

1. ^See, for example, {{Citation | title = comments in the host-side Linux implementation | url = http://lxr.linux.no/#linux+v3.4.4/drivers/net/usb/rndis_host.c#L31 | deadurl = yes | archiveurl = https://web.archive.org/web/20050923210216/http://lxr.linux.no/#linux+v3.4.4/drivers/net/usb/rndis_host.c | archivedate = 2005-09-23 | df = }}
2. ^{{cite web |url=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=64e049102d3de3e61409cb6019403a9e689dfda6|title=kernel/git/torvalds/linux.git - Linux kernel source tree|website=git.kernel.org}}
3. ^{{cite web|url=https://svnweb.freebsd.org/base?view=revision&revision=261541|title=[base] Revision 261541|website=svnweb.freebsd.org}}
4. ^{{cite web|url=https://marc.info/?l=netbsd-source-changes&m=131119199610743|title='CVS commit: src/sys/dev/usb' - MARC|website=marc.info}}
5. ^{{cite web|url=https://marc.info/?l=openbsd-cvs&m=126748674430960|title='CVS: cvs.openbsd.org: src' - MARC|website=marc.info}}

External links

  • [https://docs.microsoft.com/en-us/windows-hardware/drivers/network/overview-of-remote-ndis--rndis- Overview of Remote NDIS (RNDIS)]

See also

  • Ethernet over USB

1 : Microsoft application programming interfaces

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/15 21:16:00