사용자:Kendhc123/LwIP
원저자 | Adam Dunkels |
---|---|
개발자 | lwIP developers group |
안정화 버전 | 2.1.2
/ 2018년 12월 22일 |
프로그래밍 언어 | C |
운영 체제 | multiple |
플랫폼 | embedded systems |
종류 | IP stack |
라이선스 | Modified BSD license |
웹사이트 | savannah |
lwIP (lightweight IP)는 임베디드 시스템에서 널리 사용되는 오픈 소스 TCP/IP 스택 입니다. lwIP는 스웨덴 컴퓨터 과학 연구소 (Swedish Institute of Computer Science)의 Adam Dunkels 에 의해 처음 개발되었으며 현재는 전 세계 개발자 네트워크에 의해 개발 및 유지 관리되고 있습니다.
lwIP는 많은 임베디드 시스템 제조업체에서 사용합니다. 예로 알테라 (니오스 II 운영체제), 아날로그 디바이스 (블랙 핀 DSP의 칩),[1] 자일링스,[2] 하니웰 (FAA 인증 항법 시스템의 일부)과 프리 스케일 세미컨덕터 (자동차 마이크로 컨트롤러용 이더넷 스트리밍 SW)가 있습니다.
lwIP 네트워크 스택[편집]
lwIP 네트워크 스택 구현의 초점은 풀 스케일 TCP 스택을 사용하면서도 리소스 사용을 줄이는 것입니다.[3] 따라서 lwIP는 수십 킬로바이트의 여유 RAM과 코드를 위한 약 40킬로바이트이상의 ROM이있는 임베디드 시스템에서 사용하기에 적합합니다.
lwIP 프로토콜 구현[편집]
TCP/IP 스택 외에도 lwIP에는 네트워크 인터페이스, 운영 체제 에뮬레이션 계층, 버퍼 및 메모리 관리 섹션과 같은 몇 가지 중요한 부분이 있습니다. 운영 체제 에뮬레이션 계층과 네트워크 인터페이스를 통해 lwIP 모듈과 운영 체제 커널 간에 공통 인터페이스를 제공하므로 lwIP 모듈을 운영 체제에 이식 할 때 lwIP의 네트워크 스택이 제대로 작동 할 수 있습니다.[3]
인터넷 계층에서 lwIP의 네트워크 스택에는 여러 네트워크 인터페이스를 통한 패킷 전달을 처리 할 수 있는 IP (Internet Protocol) 구현이 포함됩니다.[3] IPv4 와 IPv6 모두 lwIP v2.0.0부터 듀얼 스택을 지원합니다. 네트워크의 유지 보수 및 디버깅을 위해 lwIP는 구현 ICMP (인터넷 제어 메시지 프로토콜)을 도입합니다.[3] IGMP (Internet Group Management Protocol)는 멀티 캐스트 트래픽 관리를 지원합니다. MLD를 포함한 ICMPv6 은 IPv6 사용을 지원하기 위해 구현됩니다.
[ 표창장은 필요로했다 ] 데이터 링크 계층에서 이더넷 용 lwIP의 인터넷 프로토콜 (IP)을 지원하려면 IPv4 ARP (Address Resolution Protocol) 구현이 필요하며 IPv6 Neighbor Discovery Protocol이 필요합니다. lwIP는 데이터 링크 계층에서 PPP (Point-to-Point Protocol) 구현 위에서 작동 될 수도 있습니다. [ 표창장은 필요로했다 ] 전송 계층에서 lwIP는 혼잡 제어, RTT 추정 및 빠른 복구/ 빠른 재전송을 사용하여 TCP (전송 제어 프로토콜)를 구현합니다.[3] UDP (사용자 데이터그램 프로토콜)는 실험적인 UDP-Lite 확장으로 구현됩니다. [ 표창장은 필요로했다 ]
API 및 소켓[편집]
lwIP는 향상된 네트워크 스택 성능을 위한 특수한 no-copy API (Application Programming Interface)를 제공합니다. 버클리 소켓 API 는 선택 사항입니다.[3] 원시 소켓 또는 원시 pcb는 사용 된 API에 따라 제공됩니다. [4]
응용 계층 지원[편집]
응용 계층에서 lwIP 네트워크 스택은 다음 프로토콜의 구현을 통해 지원 될 수 있습니다. 개인 MIB ( 관리 정보 기반 원 및 MIB 컴파일러가있는 v1, v2 또는 v3의 SNMP (단순 네트워크 관리 프로토콜) 에이전트, DNS (Domain Name System)가 지원됩니다.
lwIP TCP/IP 스택을 구현하는 운영 체제는 응용 계층에서 IPv4 DHCP (동적 호스트 구성 프로토콜) 클라이언트 또는 IPv4 링크-로컬 주소 (일명. 자동 IP)와 같은 다양한 지원 클라이언트 및 서버를 제공 할 수 있습니다. 특수화 된 원시 API 응용 프로그램에는 HTTP 서버, SNTP 클라이언트, SMTP 클라이언트, NetBIOS 네임 서버, mDNS 응답자, MQTT 클라이언트 및 TFTP 서버가 포함됩니다. [ 표창장은 필요로했다 ]
OS 구현[편집]
lwIP는 ReactOS 와 Genode[5] 에서 네트워크 스택으로 사용되며 Minix 와 GNU Hurd 에서 네트워크 서버를 구현하는 데 사용할 수 있습니다.
또한보십시오[편집]
- 마이크로 IP ( uIP )
참고 문헌[편집]
- ↑
- ↑
- ↑ 가 나 다 라 마 바 (ed.), Yanwen Wu (2010). 《Software engineering and knowledge engineering : theory and practice》. Berlin: Springer. 639쪽. ISBN 978-3-642-03717-7.
- ↑
- ↑ “Release notes for the Genode OS Framework 9.11”.
외부 링크[편집]
[[분류:임베디드 시스템]] [[분류:번역이 검토되지 않은 문서]]