KR100639986B1 - 무선랜 mac 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법 - Google Patents
무선랜 mac 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법 Download PDFInfo
- Publication number
- KR100639986B1 KR100639986B1 KR1020050017657A KR20050017657A KR100639986B1 KR 100639986 B1 KR100639986 B1 KR 100639986B1 KR 1020050017657 A KR1020050017657 A KR 1020050017657A KR 20050017657 A KR20050017657 A KR 20050017657A KR 100639986 B1 KR100639986 B1 KR 100639986B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- sequence header
- interrupt
- ack message
- wireless terminal
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/02—Data link layer protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명에 의한 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법은 무선단말기로 송신하는 데이터와 상기 데이터에 관한 정보를 포함하는 시퀀스헤더를 결합하여 제1데이터프레임을 생성하는 단계; 상기 제1데이터프레임에서 데이터만 분리하여 상기 무선단말기로 송신하고 상기 시퀀스헤더는 저장하는 단계; 상기 무선단말기로부터 상기 데이터에 대응하는 ACK 메시지를 수신하면 그에 해당하는 저장되어 있던 상기 시퀀스헤더를 상기 ACK 메시지에 부착하여 저장하고 수신인터럽트를 발생하는 단계; 및 상기 수신인터럽트에 따라 상기 시퀀스헤더와 ACK 메시지를 읽어 송신 성공 여부를 확인하는 단계;를 포함하는 것을 특징으로 하며, 소프트웨어 모듈과 하드웨어 모듈간의 인터럽트 횟수를 크게 줄임으로써 데이터 처리 속도를 크게 향상시키고 CPU의 로드를 줄일 수 있으며, 또한 시스템의 안정성도 향상되게 된다.
매체접근제어, MAC, 무선 LAN, 무선랜, ACK
Description
도 1은 본 발명에 의한 무선랜 매체접근제어의 인터럽트 감소 방법이 적용되는 네트워크 인터페이스 카드의 구성 블럭도이다.
도 2는 본 발명에 의한 무선랜 매체접근제어의 인터럽트 감소 방법의 과정을 보여주는 흐름도이다.
도 3은 데이터의 송수신과정중 시퀀스 헤더의 탈부착을 설명하기 위한 도면이다.
본 발명은 네트워크 인터페이스 카드에서 데이터 송수신시 발생하는 인터럽트를 감소시키기 위한 방법에 관한 것으로서, 보다 자세하게는 다수의 사용자가 무선 채널을 공유하여 데이터 통신을 수행하는 무선랜 환경하의 네트워크 인터페이스 카드에서 시퀀스 헤더라는 정보 필드를 이용함으로써 수신 인터럽트 만을 이용하여 소프트웨어 모듈이 송신 성공 MSDU가 어떤 것인지를 파악할 수 있게 하여 무선 채널의 사용권한을 인터럽트를 통하여 제어하는 방법에 관한 것이다.
무선랜을 이용한 고속 무선 데이터 통신을 위해서는 지연에 민감한 프레임과 실시간성을 요구하는 기능의 처리가 원활히 이루어져야 한다. 이러한 지연 민감성 및 실시간 송수신을 위해 매체접근제어의 하드웨어 처리는 필수적이다. 그러나 이러한 하드웨어 모듈의 추가로 인해 메체접근제어 기능이 소프트웨어와 하드웨어로 분리됨으로써 두 모듈간의 통신이 이루어져야 하는 복잡성이 존재하게 된다. 이러한 복잡성은 구현을 어렵게 하고 소프트웨어 모듈로 적절한 정보를 전달하기 힘들게 하며 CPU의 로드를 크게 하는 등 필연적인 오버헤드를 가지게 된다. 본 발명은 이러한 하드웨어 모듈의 복잡성에도 불구하고 적절하게 소프트웨어 모듈로 송 수신에 대한 정보를 전달하는 방법을 제공한다.
무선랜 시스템에서 상위계층으로부터 전송되는 데이터는 MSDU(Medium Access Control Service Data Unit) 또는 MMPDU(Medium Access Control Management Protocol Data Unit) 단위로 이루어져 있으며 0에서 최대 2403 바이트 크기를 가진다. 이러한 데이터는 매체접근제어 계층에서 MPDU(Medium Access Control Protocol Data Unit) 단위로 분할되어 전송될 수 있다.
무선랜 시스템에서는 Stop and Wait 방식의 ARQ를 사용하고 있다. 이것은 송신측에서 데이터를 전송한 후 수신 측으로부터 ACK를 전달받기까지 다음 송신을 하지 않고 기다리는 방식이다. 그러나 매체접근제어 기능이 소프트웨어 모듈과 하드웨어 모듈로 분리됨으로써 소프트웨어 블록에서 생성하여 하드웨어 블록에서 전송하는 프레임에 대한 수신측 응답인 ACK 프레임의 수신 여부를 소트프웨어 모듈로 효과적으로 전달해 주어야 하는 문제가 발생한다.
이러한 송신 성공 여부를 알려주는 방법은 주로 인터럽트를 이용하는 방법이 있으나, 이것은 MAC 소프트웨어 모듈에서 인터럽트의 종류를 확인하기 위해 여러 번 하드웨어 모듈의 레지스터를 엑세스 해야 하는 오버헤드가 존재하여 시간적 측면과 CPU 로드 측면에서 낭비를 가져올 수 있다.
또한 잦은 인터럽트로 인한 성능 및 시스템의 안정성 저하를 방지하기 위해 인터럽트를 사용하지 않고 CPU에 의한 주기적인 폴링 방식을 사용하는 경우가 있으나 이 경우 CPU 로드가 상대적으로 크며 불필요하게 하드웨어가 대기하게 되어 발생되는 시간 낭비가 커 오히려 성능을 크게 저하 시킬 수 반면, 인터럽트의 횟수를 줄여야 하는 필요성이 제기되고 있다.
본 발명이 이루고자 하는 기술적 과제는 상기의 필요성을 해결하기 위하여 안출된 것으로서, 네트워크 인터페이스 카드의 매체접근제어 하드웨어 모듈과 소프트웨어 모듈간의 데이터 처리속도를 향상시키고 소프트웨어 모듈을 처리하는 중앙처리장치의 부하를 줄이기 위하여 송신 데이터에 시퀀스 헤더라는 정보 필드를 부착하여 이용함으로써 수신 인터럽트 만을 이용하여 소프트웨어 모듈이 송신 성공 MSDU가 어떤 것인지를 파악할 수 있도록 하기 위한 방법을 제공하는데 있다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법은 무선단말기로 송신하는 데이터와 상기 데이터에 관한 정보를 포함하는 시퀀스헤더를 결합하여 제1데이 터프레임을 생성하는 단계; 상기 제1데이터프레임에서 데이터만 분리하여 상기 무선단말기로 송신하고 상기 시퀀스헤더는 저장하는 단계; 상기 무선단말기로부터 상기 데이터에 대응하는 ACK 메시지를 수신하면 그에 해당하는 저장되어 있던 상기 시퀀스헤더를 상기 ACK 메시지에 부착하여 저장하고 수신인터럽트를 발생하는 단계; 및 상기 수신인터럽트에 따라 상기 시퀀스헤더와 ACK 메시지를 읽어 송신 성공 여부를 확인하는 단계;를 포함하는 것을 특징으로 한다.
이하에서, 첨부한 도면을 참조하면서 본 발명의 바람직한 일 실시예에 대하여 상세히 설명하기로 한다. 먼저 본 발명에 의한 인터럽트 감소 방법의 개요를 약술한다. 본 발명에 의한 무선랜 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법은, 무선랜 매체접근제어(MAC: Medium Access Control)의 구현시 네트워크 인터페이스 카드내의 소프트웨어 모듈(111)과 하드웨어 모듈(113)간에 ACK (Acknowledgement: 응답) 패킷을 효율적으로 전달함으로써 하드웨어의 송신 상태를 소프트웨어에서 손쉽게 파악할 수 있는 기법이다.
그리고 이러한 방법은 송신 패킷의 완료상태를 MAC 소프트웨어 모듈(111)에 직접적으로 알려주지 않아도 되므로 MAC 소프트웨어 모듈에서는 MAC 하드웨어 모듈(113)로부터 인터럽트가 발생하면 무조건 수신 인터럽트라고 판단하여 즉시 수신버퍼로부터 데이터를 가져올 수 있다. 이것은 인터럽트가 발생 시 MAC 소트프웨어 모듈에서 인터럽트의 종류를 인식하기 위해 MAC 하드웨어의 레지스터를 확인한 후 확인된 인터럽트의 종류에 맞는 반응을 하는 일반적인 방법보다 MAC 하드웨어를 액세스하는 횟수를 줄여주어 시간적 측면과 CPU 로드 측면에서 효과적이다.
본 발명은 도 1과 같은 무선랜 시스템 환경하에서 동작한다. 도 1은 매체접근제어 소프트웨어 모듈(111)과 하드웨어 모듈(113), 모뎀(113) 및 RF(Radio Frequency)인터페이스로 구성되어 있는 NIC (네트워크 인터페이스 카드)를 보여준다. 도 1에서는 소프트웨어 모듈이 CPU(중앙처리장치)와 메모리로 구성되어 있지만 본 발명은 CPU가 NIC에 존재하지 않는 환경에서도 적용될 수 있다. 도 1은 소프트웨어 모듈(111)의 메모리에 저장된 데이터를 MSDU로 포맷팅하여 하드웨어 모듈(113)에 전달해주고 하드웨어 모듈은 적절한 타이밍에 모뎀으로 전달하는 송신 환경과 모뎀으로부터 데이터를 하드웨어 모듈의 버퍼에 저장한 후 인터럽트를 통해 소프트웨어 모듈의 CPU에 의해 메모리로 저장되는 수신 환경을 보여준다.
도 2는 본 발명에 의한 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법의 송수신 흐름도를 도시한 도면이다. 먼저 시퀀스 헤더라는 정보 필드를 소프트웨어 모듈(113)로부터 전달된 MSDU에 부가하여 시퀀스 헤더가 부착된 제1데이터프레임을 생성하여(S201단계), 순서대로 하드웨어 모듈(113)의 버퍼에 저장한다. 시퀀스 헤더라는 정보 필드는 MSDU의 순서가 차례대로 적혀 있고 시퀀스 헤더의 크기는 구현에 따라 달리 적용될 수 있다. 송신 시점이 되면 하드웨어 모듈의 버퍼로부터 제1데이터프레임에서 시퀀스 헤더는 제거되고 MSDU 만이 모뎀으로 전달된다. 이때 시퀀스 헤더는 하드웨어 모듈의 레지스터에 저장된다(S202단계). 수신측 단말기 또는 AP(Access Point)가 MSDU를 성공적으로 수신할 경우 그 응답으로 수신 측은 ACK 프레임을 송신측으로 전송하게 되는데 하드웨어 모듈에서는 송신 MSDU에 대해 ACK 프레임이 도착해야만 재전송을 수행하지 않고 다음 MSDU를 송신할 수 있다(S203단계).
본 발명에 의한 실시예에서 하드웨어 모듈(113)은 이렇게 수신한 ACK 프레임에 이전에 레지스터에 저장했던 시퀀스 헤더를 붙여서 수신 버퍼에 저장하고 수신 인터럽트를 발생한다(S204단계). 수신 버퍼에 저장된 데이터 또는 ACK 프레임은 수신 인터럽트를 통해 CPU에 알려지고 소프트웨어 모듈(111)의 메모리에 저장된다. 이때 CPU는 ACK 프레임의 시퀀스 헤더를 읽어 어떤 MSDU에 대한 응답인지를 파악하여 MSDU의 송신 성공 여부를 확인할 수 있다(S205단계).
도 3은 무선랜 매체접근제어 ACK 처리를 통해 인터럽트를 간소화하는 방법의 구체적인 모습을 보여준다. 도 3에서는 소프트웨어모듈(111)로부터 데이터(MSDU) 1, 2, 3, 4 (301)가 하드웨어 모듈(113)을 통하여 PHY 인터페이스(309)로 송신되었지만 수신된 ACK는 1, 2, 4 데이터(303)에 대한 것임을 보여준다. 시퀀스 헤더는 분리되고 데이터만 송신되는 모습을 305를 통하여 알 수 있다. 그러나 데이터 3의 경우 여러 번 재전송 했지만 계속 ACK를 받지 못한 상태를 예로 든 것으로서, 이런 경우 소프트웨어 모듈(113)은 시퀀스 헤더가 1,2,4 인 ACK 만을 수신하게 되어 데이터 3이 제대로 전송되지 않았음을 파악할 수 있다. 도면에서는 4번 데이터에 대한 ACK(307)가 수신되어 그 에 해당하는 시퀀스 헤더가 부착되고, 3번 데이터의 시퀀스 헤더는 폐기되는 것을 보여준다.
본 발명은 이렇게 수신된 ACK 프레임을 수신 데이터와 같이 수신 버퍼에 저장함으로써 별도의 송신 완료를 알려주는 인터럽트를 CPU에 알려주지 않고 수신 인터럽트만을 통해 송신 완료 및 성공 여부를 알려줄 수 있다. 그 결과 네트워크 인 터페이스 카드에서 소프트웨어 모듈과 하드웨어 모듈간에 인터럽트 횟수가 현저하게 줄어 들게 되어 성능을 크게 향상시켜줄 수 있다.
본 발명에 의한 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상기에서 설명한 바와 같이 본 발명에 의한 무선랜 MAC 시스템에 있어서의 인터럽트 감소 방법에 의하면 소프트웨어 모듈과 하드웨어 모듈간의 인터럽트 횟수를 크게 줄임으로써 데이터 처리 속도를 크게 향상시키고 CPU의 로드를 줄일 수 있으며, 또한 시스템의 안정성도 향상되게 된다.
Claims (3)
- (a) 무선단말기로 송신하는 데이터와 상기 데이터에 관한 정보를 포함하는 시퀀스헤더를 결합하여 제1데이터프레임을 생성하는 단계;(b) 상기 제1데이터프레임에서 데이터만 분리하여 상기 무선단말기로 송신하고 상기 시퀀스헤더는 저장하는 단계;(c) 상기 무선단말기로부터 상기 데이터에 대응하는 ACK 메시지를 수신하면, 그에 해당하는 상기 시퀀스헤더를 상기 ACK 메시지에 부착한 후 저장하고 수신인터럽트를 발생하는 단계; 및(d) 상기 수신인터럽트에 따라 상기 시퀀스헤더와 ACK 메시지를 읽어 송신 성공 여부를 확인하는 단계;를 포함하는 것을 특징으로 하는 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법.
- 제1항에 있어서, 상기 시퀀스헤더는그 크기를 가변할 수 있는 것을 특징으로 하는 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법.
- 제1항에 있어서, 상기 정보는상기 데이터의 송신순서를 포함하는 것을 특징으로 하는 무선랜 MAC 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20040102966 | 2004-12-08 | ||
KR1020040102966 | 2004-12-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060064444A KR20060064444A (ko) | 2006-06-13 |
KR100639986B1 true KR100639986B1 (ko) | 2006-10-31 |
Family
ID=37160003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050017657A KR100639986B1 (ko) | 2004-12-08 | 2005-03-03 | 무선랜 mac 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100639986B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109254932B (zh) * | 2018-09-18 | 2020-09-18 | 北京无线电测量研究所 | 多网口驱动方法、装置及存储介质 |
-
2005
- 2005-03-03 KR KR1020050017657A patent/KR100639986B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20060064444A (ko) | 2006-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8804741B2 (en) | Method and system for handling out-of-order segments in a wireless system via direct data placement | |
US7461164B2 (en) | Medium access control with software -and hardware- based components in a wireless network | |
US7706338B2 (en) | Method and system for a bandwidth efficient medium access control (MAC) protocol | |
US7746861B2 (en) | Communication apparatus and method | |
US7551638B2 (en) | Network interface with transmit frame descriptor reuse | |
US20050025167A1 (en) | Media access control device for wireless LAN | |
US8589586B2 (en) | Method and apparatus for managing transmission of TCP data segments | |
US10932159B2 (en) | Data transmission method, data receiving device, and data sending device | |
CN113676294B (zh) | 数据重传方法、通信装置、计算机设备及可读存储介质 | |
JP2004040493A (ja) | パケット通信装置及びパケット通信方法 | |
US20050039075A1 (en) | Receiving device, transmitting device and programs | |
US20120044797A1 (en) | Method and Equipment for Sending Radio Link Layer Status Package | |
KR100639986B1 (ko) | 무선랜 mac 시스템의 네트워크 인터페이스 카드에 있어서의 인터럽트 감소 방법 | |
WO2020063501A1 (zh) | 传输确认报文的方法和通信设备 | |
JP2000244463A (ja) | 無線パケット送受信方法及び装置 | |
WO2019015487A1 (zh) | 一种数据重传处理方法、rlc实体和mac实体 | |
CN110730141B (zh) | 一种聚合调度方法、发送端及计算机可读存储介质 | |
KR100560418B1 (ko) | 무선랜 하드웨어 처리에서의 수신 처리 시스템 및 그 방법 | |
KR100639987B1 (ko) | 무선랜 mac 시스템에 있어서의 폴링 기반 고속 mac송수신 방법 및 그 장치 | |
US7428242B2 (en) | Action list for a split media access and control layer communications system | |
US20230112796A1 (en) | Method and apparatus of reporting automatic repeat request status in a communication system | |
CN107888341B (zh) | 一种数据传输方法及装置 | |
JP2002314547A (ja) | 中央制御装置、端末装置及びプログラム | |
JP2002185466A (ja) | パケット送受信装置 | |
Zhang et al. | Reliable UDP over the air transfer in digital radio system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |