KR100600794B1 - 패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법 - Google Patents

패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법 Download PDF

Info

Publication number
KR100600794B1
KR100600794B1 KR1020040033982A KR20040033982A KR100600794B1 KR 100600794 B1 KR100600794 B1 KR 100600794B1 KR 1020040033982 A KR1020040033982 A KR 1020040033982A KR 20040033982 A KR20040033982 A KR 20040033982A KR 100600794 B1 KR100600794 B1 KR 100600794B1
Authority
KR
South Korea
Prior art keywords
reception
packet
state
predetermined
memory
Prior art date
Application number
KR1020040033982A
Other languages
English (en)
Other versions
KR20050056109A (ko
Inventor
박현욱
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US10/986,805 priority Critical patent/US20050122973A1/en
Publication of KR20050056109A publication Critical patent/KR20050056109A/ko
Application granted granted Critical
Publication of KR100600794B1 publication Critical patent/KR100600794B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

네트워크를 통해 패킷을 수신하는 네트워크 통신노드가 개시된다. 본 네트워크 통신노드는, 네트워크로 연결된 소정의 상대노드로부터 소정의 패킷을 수신하는 네트워크 통신모듈, 소정의 수신제한기준에 대한 정보가 저장된 메모리, 및 네트워크 통신모듈의 패킷수신상태를 점검하여 수신제한기준을 충족하는지 판단하고, 그 판단결과에 따라 네트워크 통신모듈의 소정 패킷에 대한 수신제한여부를 조정하는 제어부를 포함한다. 이에 따라, 패킷폭주상태가 되면 소정 패킷의 수신을 제한함으로써 폭주상태를 신속하게 해소할 수 있다.
네트워크 통신모듈, 네트워크 프린터, 패킷

Description

패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드 및 그 방법 {Network node for restricting packet receiving activity and method thereof }
도 1은 인터넷에 연결된 네트워크 시스템의 일반적인 구성을 나타내는 모식도,
도 2는 종래의 네트워크 시스템을 구성하는 네트워크 통신노드에서 패킷을 수신하는 방법을 설명하기 위한 흐름도,
도 3은 네트워크 프린터의 일반적인 구성을 나타내는 모식도,
도 4는 본 발명의 일실시예에 따른 네트워크 시스템을 구성하는 네트워크 통신노드의 구성을 나타내는 블럭도,
도 5는 도 4의 네트워크 통신노드에서 사용되는 네트워크 통신모듈의 세부구성을 나타내는 블럭도,
도 6은 본 발명의 일실시예에 따른 네트워크 통신노드에서 패킷수신동작을 조정하기 위한 유저인터페이스 창을 나타내는 모식도,
도 7은 본 발명의 일실시예에 따른 네트워크 통신노드에서 패킷을 수신하는 방법을 설명하기 위한 흐름도,
도 8은 도 7의 흐름도에서 패킷수신동작을 조정하는 방법에 대한 제1실시예를 설명하기 위한 흐름도,
도 9는 도 7의 흐름도에서 패킷수신동작을 조정하는 방법에 대한 제2실시예를 설명하기 위한 흐름도,
도 10은 도 7의 흐름도에서 패킷수신동작을 조정하는 방법에 대한 제3실시예를 설명하기 위한 흐름도,
도 11은 본 발명의 또다른 실시예에 따른 네트워크 프린터의 구성을 나타내는 블럭도, 그리고,
도 12는 도 11에 도시된 네트워크 프린터에서의 패킷수신방법을 설명하기 위한 흐름도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
100 : 네트워크 통신노드 110 : 제어부
120 : 네트워크 통신모듈 130 : 제1메모리
140 : 제2메모리 150 : 입출력 인터페이스
160 : 입력장치 170 : 출력장치
121 : MAC 제어기 123 : 데이터 송수신부
200 : 네트워크 프린터 230 : 패킷상태검출부
본 발명은, 네트워크 시스템, 이를 구성하는 네트워크 통신노드, 및 이를 이용한 데이터 통신방법에 관한 것으로, 보다 상세하게는, 네트워크 시스템의 통신상 태를 점검하여 데이터폭주상태가 감지되면 데이터수신을 제한하는 통신노드, 시스템, 및 통신방법에 관한 것이다.
컴퓨터의 발달 및 전자통신기술 등의 발달에 힘입어, 일반 회사에서 각 사원들이 사용하는 PC들을 하나의 네트워크로 연결하여 사용하게 된 것은 이미 오래전 일이다. 최근에는, 일반 가정에서도 여러대의 컴퓨터를 네트워크로 연결하여 사용할 정도로 네트워크 기술은 점차 대중화되고 있다.
특히, 프린터, 스캐너, 복합기 등의 화상형성장치는, PC 만큼 사용빈도가 높지 않아 회사내의 각 사원이 1인당 1대씩 구비할 필요가 없으므로, 적절한 개수의 화상형성장치를 네트워크로 연결하여 사용하는 것이 일반적이다.
도 1은 인터넷(10)에 연결된 네트워크 시스템의 일반적인 구성을 나타내는 모식도이다. 도 1에 따르면, 복수개의 통신노드(40a, 40b, ..., 40n, 50)로 구성된 네트워크 시스템이 라우터(20)를 통해 인터넷(10)에 연결된다. 라우터(Router : 20)란 두 개의 네트워크를 연결하여 한 네트워크에서 다른 네트워크로 통신할 수 있도록 도와주는 하드웨어 또는 소프트웨어 장치를 의미하는데, 여러 개의 노드(40a, 40b, ... , 40n, 50)에 연결할 경우에는 허브(hub : 30)를 사용하여 회선을 분리한다. 허브(30)는 데이터를 수신한 후, 연결된 적어도 하나의 노드로 전달하는 역할을 한다. 허브(30)에는 각종 노드(node), 예를 들어, 수개의 PC(40a 내지 40n), 네트워크 프린터(50), 스캐너(미도시) 등이 연결될 수 있다. 허브(30)에 연결된 각 노드들은, 다른 노드 및 인터넷을 통한 연결된 외부 노드 등과 데이터패킷을 교환함으로써 통신할 수 있게 된다.
도 2는 도 1에 도시된 네트워크 시스템을 구성하는 임의의 한 노드에서 이루어지는 종래의 데이터통신방법을 설명하기 위한 흐름도이다. 도 2를 살피면, 먼저, 노드가 파워 ON되면 내부 구성요소들에 대한 초기화가 진행된다(S61). 이 경우, 네트워크 시스템을 구성하고 있으므로, 노드의 일반적인 셋-업 동작 뿐만 아니라 네트워크 동작을 수행하기 위한 추가적인 동작을 수행한다. 즉, 송수신될 패킷이 저장될 메모리를 할당하며, 수신될 패킷들의 MAC 어드레스(혹은, 노드 어드레스)를 지정하여 브로드캐스트 패킷, 멀티캐스트 패킷, 및 유니캐스트 패킷 등의 여러 패킷 중 어느 패킷을 수신할 것인지를 결정하게 된다.
다음으로, 지정된 MAC 어드레스를 바탕으로 소정 패킷을 수신하는 단계이다(S62). 즉, 노드는, 설정된 값에 따라서 허브(30) 및 다른 통신노드로의 링크(link)를 설정하고, 이를 통해 패킷을 수신하게 된다.
다음으로, 수신된 패킷에 이상이 있는지를 판단한 후(S63), 수신패킷의 주소를 확인하여(S64), 수신가능한 MAC 어드레스를 가지는지를 판단하게 된다(S65). 수신가능한 패킷이라고 판단되면, 할당된 메모리에 패킷을 저장하게 된다(S66). 만일, 수신된 패킷에 이상이 있거나, 수신가능한 주소의 패킷이 아니라면, 메모리에 저장하지 않고 바로 폐기(discard)하게 된다(S68).
한편, 정상적으로 수신되어 저장된 패킷은 상위 프로토콜 계층 또는 다른 응용 프로그램으로 전송되어 패킷 내용에 따라 처리되고, 패킷에 할당된 메모리를 다시 해제하게 된다(S67). 최종적으로 노드가 파워 오프되거나, 네트워크 연결이 해제될 때까지는 이러한 단계가 반복적으로 수행되게 된다(S69).
한편, 패킷 수신과정에 있어서, 예기치 않게 네트워크로부터 일시에 많은 데이터가 수신된다면, 해당 노드는 수신 메모리가 부족하여 이후에 수신되는 패킷을 수신할 수 없다는 문제점이 발생할 수 있다. 즉, 특정 어드레스를 지정하지 않고 전송되는 브로드캐스트 패킷이 과다하게 수신되어 데이터 폭주상태가 발생한 경우, 더 중요한 데이터패킷이 그 이후에 전송되면 바로 폐기되므로, 적절한 처리가 이루어지지 않게 된다는 문제점이 생길 수 있다. 이러한 문제점은, 특히, 네트워크 기능을 지원하는 네트워크 프린터, PDA 등과 같이 데이터 처리속도가 상대적으로 느리고, 메모리도 제한적인 시스템에 대해서 더 크게 문제될 수 있다.
뿐만 아니라, 앞서 수신된 사소한 데이터의 처리지연으로 인하여 뒤에 수신되는 더 중요한 데이터에 대한 처리가 늦어질 수 있다는 문제점도 가진다.
또한, 노드 자체가 특정한 작업을 수행하고 있는 가운데, 처리하여야 할 네트워크 트래픽이 증가하게 되면, 그 동작 수행에 영향을 주게 되는 문제점도 발생할 여지가 있다. 이러한 문제점은 기계적 구성요소를 이용하여 인쇄작업을 수행하는 네트워크 프린터(50)의 경우에 발생할 여지가 크다.
도 3은 도 1의 네트워크 시스템을 구성하는 네트워크 프린터(50)의 일반적인 구성을 나타내는 블럭도이다. 도 3에 따르면, 네트워크 프린터(50)는 CPU(51), 데이터통신모듈(52), 메모리(53), 엔진유닛(54), 및 시스템버스(system bus : 55)를 포함한다. CPU(51)는 시스템버스(55)를 이용하여 각 구성유닛들로 데이터를 송신하거나 수신하게 된다. 데이터통신모듈(52)은 네트워크로 연결된 PC로부터 인쇄대상데이터가 수신되면 메모리(53)에 저장한다. CPU(51)는 저장된 인쇄대상데이터를 메 모리(53)로부터 추출하여 매 페이지 단위로 소정의 비트맵이미지로 변환하는 랜더링(randering)작업을 수행한다. CPU(51)에서 변환된 비트맵이미지는 시스템버스(55)를 통해 엔진유닛(54)으로 전송되고, 엔진유닛(54)은 이를 용지상에 인쇄하게 된다.
최근의 네트워크 프린터(50)는 네트워크 카드를 프린터의 메인보드에 내장하여 하나의 CPU(51)로 동작하도록 한다. 이 경우, 네트워크 프린터(50)에서 수신되는 패킷이 폭주하게 되면 CPU(51)의 연산처리 지연 또는 시스템버스(55) 상에서의 전송지연 등이 발생한다. 특히, CPU(51)가 인쇄대상데이터를 렌더링하여 엔진유닛(54)에 전송하는 시점에서 이러한 패킷폭주현상이 발생하면, 인쇄되어야 할 비트맵이미지가 제시간에 준비되지 못해 에러가 발생한다는 문제점이 있다. 즉, 엔진유닛(54)에서 인쇄작업을 중지하고 대기하거나, 렌더링이 완료된 부분까지만 인쇄하여 출력하는 등의 오동작이 발생하게 된다. 이에 따라, 인쇄시간이 오래 걸리거나, 다시 인쇄작업을 수행함에 따라 인쇄용지가 낭비될 수 있다는 문제점이 있었다.
또한, 이러한 문제점을 방지하기 위해 프린터 시스템 및 네트워크 카드를 각각 독립된 시스템으로 구현하게 되면, 네트워크 프린터의 제조비용이 비싸지게 된다는 문제점이 있었다.
본 발명은 상술한 문제점을 해결하기 위하여 안출된 것으로써, 본 발명의 목적은, 네트워크 시스템에 있어서 데이터 폭주상태 등의 특정상태가 감지되면, 데이 터패킷 수신을 제한하도록 동작하는 네트워크 통신노드, 이를 포함하는 네트워크 시스템 및 이러한 네트워크 시스템에서의 데이터통신방법을 제공하는 것이다.
본 발명의 또다른 목적은, 특정 작업을 수행하는 도중에 데이터 폭주상태 등이 감지되면 데이터 패킷의 수신을 일차적으로 제한하고, 수신제한이 이루어진 상태에서도 데이터 폭주상태가 개선되지 않으면 모든 패킷에 대하여 수신을 제한하여 작업 수행시의 오동작을 방지할 수 있는 네트워크 프린터 및 그 방법을 제공하는 것이다.
이상과 같은 목적을 달성하기 위하여, 본 발명의 일실시예에 따른 네트워크 통신노드는 네트워크로 연결된 소정의 상대노드로부터 소정의 패킷을 수신하는 네트워크 통신모듈, 소정의 수신제한기준에 대한 정보가 저장된 메모리, 및 상기 네트워크 통신모듈의 패킷수신상태를 점검하여 상기 수신제한기준을 충족하는지 판단하고, 그 판단결과에 따라 상기 네트워크 통신모듈의 소정 패킷에 대한 수신제한여부를 조정하는 제어부를 포함한다.
이 경우, 상기 메모리는, 상기 네트워크 통신모듈을 통해 수신되는 상기 패킷을 저장하는 제1메모리, 및 상기 수신제한기준정보 및 상기 수신제한기준을 충족한 경우에 수신제한될 패킷종류정보가 저장된 제2메모리를 포함하는 것이 바람직하다.
또한 바람직하게는, 상기 수신제한될 패킷종류를 지정하는 지정명령을 외부입력장치로부터 수신하는 입출력 인터페이스를 더 포함하여, 상기 제어부는 상기 지정명령에 따라 상기 제2메모리에 기록된 상기 패킷종류정보를 변경할 수 있도록 할 수 있다.
한편, 상기 네트워크 통신모듈은, 상기 상대노드와 연결되는 링크를 개설하여 상기 링크를 통해 상기 패킷을 수신하는 데이터 송수신부, 및 상기 제어부에 의해 소정 패킷에 대한 수신제한상태로 조정되면, 상기 제2메모리로부터 상기 패킷종류정보를 독취하여 상기 데이터 송수신부를 통해 수신되는 패킷 중 수신가능한 패킷만을 상기 제1메모리에 저장하도록 하는 MAC 제어기를 포함할 수 있다.
이 경우, 상기 수신제한기준은 상기 제1메모리 내에서의 소정의 기준용량으로 결정될 수 있다. 이에 따라, 상기 제어부는 상기 제1메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 기준용량을 초과하면 상기 수신제한기준을 충족하였다고 판단하고 상기 수신제한상태를 설정할 수 있게 된다.
한편, 상기 수신제한기준은 상기 제1메모리 내에서의 소정의 상위기준용량 및 하위기준용량으로 구분되어 결정될 수도 있다. 이에 따라, 상기 제어부는 상기 제1메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 상위기준용량을 초과하면 상기 수신제한상태를 설정하고, 상기 제1메모리에 저장된 패킷이 처리되어 상기 하위기준용량 이하의 메모리 용량이 확보되면 상기 수신제한상태를 해제하도록 할 수 있게 된다.
또한 한편으로는, 상기 수신제한기준은 상기 패킷의 수신속도에 있어서 소정의 기준속도로 결정될 수도 있다. 이에 따라, 상기 제어부는 패킷수신속도가 상기 기준속도를 초과하면 상기 수신제한상태를 설정할 수 있다.
이상과 같은 경우에 있어서, 상기 제어부는 브로드캐스트 패킷, 멀티캐스트 패킷 및 유니캐스트 패킷 중 적어도 하나의 패킷종류에 대하여 수신제한상태의 설정여부를 조정할 수 있다.
한편, 본 발명의 또다른 실시예에 따른 네트워크 통신노드는, 네트워크로 연결된 상대노드로부터 소정의 패킷을 수신하는 데이터송수신부, 수신제한될 패킷종류정보가 저장되는 메모리, 소정 작업이 수행 중이라고 판단되면 소정 패킷에 대하여 수신제한상태를 설정하며, 상기 작업이 완료되었다고 판단되면 상기 수신제한상태를 해제하는 제어부, 및, 상기 수신제한상태가 설정되면 상기 메모리에 저장된 패킷종류정보를 독취하여, 상기 데이터송수신부를 통해 수신되는 패킷 중 소정 종류의 패킷에 대하여 수신을 제한하는 MAC 제어기를 포함한다.
한편, 본 발명의 또다른 실시예에 따른 네트워크 프린터는, 네트워크로 연결된 상대노드로부터 패킷을 수신하는 데이터송수신부, 소정의 이미지데이터에 따라 인쇄작업을 수행하는 엔진유닛, 상기 인쇄작업 수행 중에 상기 데이터송수신부에서의 패킷수신폭주상태가 감지되면 소정 종류의 패킷에 대한 수신제한상태를 설정하는 제어부, 및 상기 수신제한상태가 설정되면, 상기 데이터송수신부를 제어함으로써 상기 소정 종류의 패킷에 대하여 수신을 제한하는 MAC 제어기를 포함한다.
이 경우, 상기 제어부는, 상기 데이터송수신부를 통해 수신되는 패킷의 단위시간당 개수를 확인하여 소정의 임계값과 비교한 후, 상기 임계값을 초과하면 상기 패킷수신폭주상태로 판단하는 것이 바람직하다.
본 네트워크 프린터는, 상기 상대노드로부터 수신되는 패킷을 저장하는 제1 메모리, 및 상기 패킷수신폭주상태가 발생하였을 경우에 수신제한될 패킷종류에 대한 정보 및 상기 임계값에 대한 정보가 기록되는 제2메모리를 더 포함하는 것이 바람직하다.
한편, 상기 제어부는, 상기 패킷의 수신상태를 주기적으로 점검하여, 상기 수신제한상태가 설정된 상태 하에서 상기 패킷수신폭주상태가 지속된다고 판단되면 전(全) 종류의 패킷에 대한 수신제한상태를 설정하는 것이 보다 바람직하다.
또한, 상기 제어부는, 프린팅 언어로 작성된 소정의 인쇄대상데이터를 매 페이지 별로 렌더링하여 상기 이미지데이터로 변환한 후, 상기 엔진유닛으로 전송하여 상기 인쇄작업을 수행하도록 하며, 각 페이지에 대한 렌더링이 완료되면 다음 페이지에 대한 렌더링이 개시되기 전까지 전 종류의 패킷에 대한 상기 수신제한상태를 해제하도록 하는 것도 바람직하다.
또한 한편으로는, 상기 제어부는 상기 인쇄작업이 종료되었다고 판단되면 상기 수신제한상태를 해제하도록 하는 것이 바람직하다.
이상의 실시예에 따른 네트워크 프린터에서도 상기 제어부는 브로드캐스트 패킷, 멀티캐스트 패킷 및 유니캐스트 패킷 중 적어도 하나의 패킷종류에 대하여 수신제한상태를 설정할 수 있다.
한편, 본 발명의 일실시예에 따른 네트워크 통신노드에서의 데이터통신방법은, (a) 상기 네트워크 통신노드가 상대노드로부터 소정의 패킷을 수신하는 단계, (b) 상기 패킷의 수신상태를 점검하여, 소정의 수신제한기준을 충족하는지 확인하는 단계, (c) 상기 수신제한기준을 충족한다고 판단되면, 기 설정된 소정 종류의 패킷에 대하여 수신제한상태를 설정하는 단계, 및 (d) 상기 수신제한상태가 설정된 종류의 패킷에 대하여 수신을 제한하는 단계를 포함한다.
이 경우, 상기 수신제한기준이 충족되면 수신이 제한되는 패킷종류를 설정하는 단계, 및 상기 패킷종류가 설정되지 않은 경우, 상기 네트워크 통신노드의 초기설정상태에 따라 수신제한될 패킷종류를 설정하는 단계를 더 포함하는 것이 바람직하다.
또한, 상기 (c)단계에서는, 상기 네트워크 통신노드에 구비된 메모리 내에서의 소정의 기준용량을 상기 수신제한기준으로 이용할 수 있다. 이에 따라, 상기 메모리내에서 기 수신된 패킷이 차지하는 저장용량이 상기 기준용량을 초과하면 상기 수신제한기준을 충족한다고 판단할 수 있다.
또는 상기 (c)단계에서는, 상기 네트워크 통신노드에 구비된 메모리 내에서의 소정의 상위기준용량 및 하위기준용량을 상기 수신제한기준으로 이용할 수 있다. 이에 따라, 상기 메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 상위기준용량을 초과하면 상기 수신제한기준을 충족한다고 판단하고, 상기 패킷이 처리되어 상기 하위기준용량 이하의 메모리용량이 확보되면 상기 수신제한기준에 미달된다고 판단하여 상기 수신제한상태를 해제할 수 있다.
또한 한편으로는, 상기 (c)단계에서는, 상기 네트워크 통신노드에 수신되는 패킷의 수신속도에 있어서 소정 기준속도를 상기 수신제한기준으로 이용할 수 있다. 이에 따라, 상기 패킷 수신속도가 상기 기준속도 이상이라고 판단되면 상기 수신제한기준을 충족한다고 판단할 수 있다.
본 실시예에 따른 데이터통신방법에 있어서도, 브로드캐스트 패킷, 멀티캐스트 패킷, 및 유니캐스트 패킷 중 적어도 하나의 패킷종류에 대하여 수신제한상태를 설정하는 것이 바람직하다.
한편, 본 발명의 또다른 실시예에 따른 네트워크 통신노드에서의 데이터통신방법은, 상대노드로부터 소정 패킷을 수신하는 단계, 상기 네트워크 통신노드가 소정 작업 수행중인지를 판단하는 단계, 상기 네트워크 통신노드가 소정 작업 수행중이라고 판단되면, 소정 종류의 패킷에 대하여 수신제한상태를 설정하는 단계, 상기 수신제한상태가 설정되면 상기 상대노드로부터 수신되는 패킷 중 소정 종류의 패킷에 대하여 수신을 제한하는 단계, 및 상기 네트워크 통신노드가 상기 작업 수행을 완료하였다고 판단되면, 상기 수신제한상태를 해제하는 단계를 포함한다.
한편, 본 발명의 또다른 실시예에 따른 네트워크 프린터에서의 데이터수신방법은, (a) 상대노드로부터 소정의 인쇄대상데이터를 수신하는 단계, (b) 상기 인쇄대상데이터를 소정의 이미지데이터로 변환하여 용지상에 인쇄하는 인쇄작업을 수행하는 단계, (c) 상기 인쇄작업 수행중에 상기 상대노드로부터 수신되는 패킷의 수신상태를 점검하는 단계, (d) 상기 수신상태가 패킷폭주상태라고 판단되면, 소정 종류의 패킷에 대하여 수신제한상태를 설정하는 단계, 및 (e) 상기 수신제한상태가 설정되면, 상기 소정 종류의 패킷에 대하여 수신을 제한하는 단계를 포함한다.
이 경우, 상기 (d)단계는, 상기 상대노드로부터 수신되는 패킷의 단위시간당 개수를 확인하는 단계, 상기 단위시간당 개수를 소정의 임계값과 비교하는 단계, 및, 상기 단위시간당 개수가 상기 임계값을 초과하면 상기 패킷폭주상태로 판단하 는 단계를 포함하는 것이 바람직하다.
또한 바람직하게는, 상기 폭주상태가 발생하였을 경우에 수신제한될 패킷종류 및 상기 임계값을 설정하는 단계를 더 포함할 수도 있다.
보다 바람직하게는, 상기 패킷수신상태를 주기적으로 점검하는 단계, 및, 상기 수신제한상태가 설정된 상태 하에서 상기 패킷수신폭주상태가 지속된다고 판단되면 전(全) 종류의 패킷에 대하여 수신제한상태를 설정하는 단계를 더 포함할 수 있다.
또한, 상기 인쇄작업이 종료되었다고 판단되면 전 종류의 패킷에 대한 상기 수신제한상태를 해제하는 단계를 더 포함할 수도 있다.
한편, 상기 상대노드로부터 소정의 프린팅 언어로 작성된 인쇄대상데이터가 수신되면, 상기 인쇄대상데이터를 매 페이지 단위로 소정의 이미지데이터로 변환하는 렌더링 작업을 수행하는 단계, 및 각 페이지에 대한 상기 렌더링 작업이 완료되면, 다음 페이지에 대한 렌더링 작업이 시작되기 전까지 전 종류의 패킷에 대한 상기 수신제한상태를 해제하는 단계를 더 포함할 수도 있다.
본 실시예에 따른 데이터수신방법에 있어서도, 상기 (d)단계에서는 브로드캐스트 패킷, 멀티캐스트 패킷 및 유니캐스트 패킷 중 적어도 하나의 패킷종류에 대하여 수신제한상태를 설정할 수 있다.
이하에서, 첨부된 도면을 참조하여 본 발명에 대하여 자세하게 설명한다.
도 4는, 본 발명의 일실시예에 따른 네트워크 통신 노드(100)의 구성을 나타내는 블럭도이다. 도 4에 따르면, 본 네트워크 통신노드(100)는 제어부(110), 네트 워크통신모듈(120), 제1메모리(130), 제2메모리(140), 및 입출력 인터페이스(150)를 포함하며, 네트워크(300)에 연결된다.
입출력 인터페이스(150)는 키버튼, 터치스크린 등의 입력장치로부터 수신되는 입력신호를 제어부(110)로 전송하거나, 제어부(110)의 상태, 현재 모드 등을 LCD 패널(미도시) 등의 출력장치로 전송하는 역할을 한다.
한편, 네트워크 통신모듈(120)은 외부 네트워크(300)와 직접적으로 데이터를 송수신하는 부분을 의미한다. 네트워크 통신모듈(120)의 세부구성에 대해서는 도 5에서 도시하고 있다.
도 5에 따르면, 네트워크 통신모듈(120)은, MAC 제어기(Media Access Controller : 121) 및 데이터송수신부(123)를 포함한다. 데이터송수신부(123)는 외부 네트워크(300)에 속하는 다른 장치와의 링크를 설정하여, 물리적으로 데이터를 주고받는 역할을 한다.
MAC 제어기(121)는 데이터송수신부(123)를 통한 데이터통신을 전반적으로 제어하는 역할을 한다. 즉, 데이터송수신부(123)에서 수신한 데이터의 순환중복여부를 검사(Cyclic Redundancy Check : CRC)하고, 패킷 사이즈등을 비교하여 수신된 패킷이 정상적인 패킷인지를 판단한 후, 오류가 있다고 판단되면 수신된 데이터패킷을 폐기한다. 또한, 수신된 패킷의 목적지주소가 본 네트워크 통신노드(100) 자체의 주소와 일치하는지를 판단한 후, 일치하지 않는 패킷은 폐기하게 된다. 즉, MAC 제어기(121)는, 브로드캐스트 패킷, 멀티캐스트 패킷, 및 자체 어드레스가 목적지주소로 기록된 유니캐스트 패킷 중 수신가능한 패킷으로 지정된 종류의 패킷만 을 수신하게 된다.
한편, 제어부(110)는 제1메모리(130)의 소정영역을 할당하여 수신된 패킷을 저장한 후, 해당하는 상위 프로토콜 계층 또는 응용 프로그램을 통해 처리하는 역할을 한다. 또한, 소정의 수신제한기준에 따라서 현재 패킷수신상태를 점검하고, 점검결과에 따라 수신제한여부를 결정하는 역할을 한다. 이러한 수신제한기준은 패킷을 저장하는 제1메모리(130)의 용량을 기준으로 설정되거나, 혹은 네트워크 통신노드 자체의 패킷 처리속도를 기준으로 설정될 수 있다. 제1메모리(130)의 용량을 기준으로 설정하는 경우를 예로 들면, 제1메모리(130)에서 기 수신된 패킷이 차지하는 용량이 소정기준을 초과하였다면 수신을 제한하도록 하고, 기준 이하라면 수신을 허용하도록 할 수 있다. 한편, 간단하게는, 단위 시간당 수신되는 패킷의 개수가 소정 임계값을 초과하였는지 여부를 수신제한기준으로 설정할 수도 있다.
제2메모리(140)는 제어부(110)에서 사용하는 소정의 수신제한기준 또는 수신제한될 패킷 종류 등을 저장하는 역할을 한다. 즉, 브로드캐스트 패킷, 멀티캐스트 패킷, 및 유니캐스트 패킷 중 어느 종류의 패킷을 수신제한 할 것인지 등을 설정한 정보가 제2메모리(140)에 기록될 수 있다.
한편, MAC 제어기(121)에서 수신가능한 패킷종류(혹은, 수신제한되는 패킷종류)를 지정하는 것은, 입출력 인터페이스(150)를 통해 외부에서 지정명령을 입력하거나, 또는 네트워크 통신노드 자체의 초기화파일에 설정된 초기 설정상태에 따라 지정될 수 있다.
도 6은 패킷의 수신제한결정여부 및 수신제한될 패킷 종류를 설정하기 위한 유저 인터페이스창(500)을 나타내는 모식도이다.
도 5의 (a)에 도시된 바와 같이, 유저 인터페이스창(500) 상에 "<네트워크 데이터 폭주시 동작변경>"이라는 메뉴가 표시되면, 사용자는 "YES" 또는 "NO"를 선택할 수 있다. "NO" 를 선택하게 되면, 종래의 네트워크 통신노드와 같이 네트워크 데이터 폭주상태를 모니터링 하지 않고 수신되는 그대로 채택하여 저장하게 된다. 하지만, "YES"를 선택하면, 네트워크 데이터 폭주상태를 모니터링하여 폭주상태가 감지되면, 기 설정된 종류의 패킷에 대하여 수신을 제한하도록 동작하게 된다.
수신 제한될 패킷도 사용자가 직접 선택하여 설정할 수 있다. 즉, "YES"가 선택되면, 디스플레이 화면(500)상에 표시되는 <동작 선택>이라는 메뉴를 추가로 표시하게 된다. 도시된 바와 같이, "브로드캐스트 패킷 수신 불가", "멀티캐스트 패킷 수신 불가", "특정 MAC 어드레스 수신허용", "특정 MAC 어드레스 수신불가"등이 추가적으로 표시될 수 있다. 사용자는, 이 중 수신을 제한하고자 하는 패킷을 선택함으로써, 데이터 폭주상태시에는 필요한 패킷만을 우선적으로 받을 수 있게 된다.
한편, 본 네트워크 통신노드 자체의 MAC 어드레스를 지정한 유니캐스트 패킷을 전송하는 특정 MAC 어드레스를 가지는 패킷에 대해서는 "특정 MAC 어드레스 수신허용", "특정 MAC 어드레스 수신불가"등을 선택하여 개별적으로 수신허용여부를 결정할 수 있다. 도 5의 (b)에서는 개별적으로 MAC 어드레스를 설정하는 경우의 디스플레이 화면을 도시하고 있다. 사용자는 특정 어드레스를 직접 입력하거나, 현재 연결된 네트워크 노드의 주소를 선택함으로써 개별적인 유니캐스트 패킷에 대해서 도 수신제한을 설정할 수 있다. 예를 들어, 특정한 사용자가 악의적인 목적을 가지고 네트워크 시스템에 계속하여 데이터를 전송하는 경우, 기존의 통신노드들과의 연결이 끊어지거나 접속속도가 느려지는 현상이 발생할 수 있다. 이 때, 네트워크 시스템은 그러한 사용자의 주소를 특정하여, 패킷수신을 제한함으로써 안정적으로 네트워크 상태를 유지할 수 있다. 한편, 이러한 사용자 지정명령이 없는 경우, 기본적으로 초기화파일에 수신제한패킷정보가 설정되어 있으면 이를 그대로 이용하여 수신제한될 패킷을 지정할 수 있다.
도 4의 구조를 가지는 네트워크 통신노드(100)는 네트워크로 연결된 사용자 PC 뿐만 아니라, 네트워크 프린터 및 네트워크 복합기 등이 될 수도 있다. 이러한 네트워크 통신노드(100)는, 네트워크 통신노드(100) 및 이와 연결된 통신 상대 노드를 포함하는 네트워크 시스템에서 데이터 수신 폭주상태가 되면 상술한 바와 같이 소정 종류의 패킷 수신을 제한하게 된다. 예를 들어, 네트워크 프린터를 포함하는 네트워크 프린팅 시스템인 경우에는, 연결된 수개의 PC로부터 전송되는 패킷이 네트워크 프린터로 집중되어 폭주상태가 되면, 어느 정도의 패킷이 처리되어 폭주상태가 완화될 때까지 패킷수신을 제한하는 동작을 수행할 수 있다.
도 7은 도 4에 도시된 네트워크 통신노드(100)에서의 데이터 통신 방법을 설명하기 위한 흐름도이다. 도 7에 따르면, 본 네트워크 통신노드(100)가 턴-온되면 초기화가 진행되어(S610), 각종 내부 구성요소들의 초기값 등을 지정하게 된다. 상술한 바와 같이 수신제한된 패킷종류에 대한 정보가 기 설정되지 않았다면, 초기화 단계에서 초기화 파일에 저장된 정보에 따라 지정할 수 있다.
다음, 네트워크 통신 모듈(120)내의 데이터 송수신부(123)가 상대노드와의 링크를 설정하고, 패킷을 수신하게 된다(S620). MAC 제어기(121)는 데이터송수신부(123)에서 수신된 패킷의 오류유무를 검사한 후(S630), 패킷의 헤더(header)부분에 기록된 목적지주소를 확인하게 된다(S640).
MAC 제어기(121)는 제2메모리(140)에 저장된 수신제한 패킷종류 설정 상태를 이용하여 패킷을 선택적으로 수신한 후, 처리하게 된다(S650). 즉, 수신가능한 패킷인지 확인한 후(S651), 수신가능한 패킷이라면 제1메모리(130)에 저장하고(S653), 제어부(110)로 소정의 인터럽트 신호를 전송하게 된다. 제어부(110)는 소정의 어플리케이션을 이용하여 패킷을 처리하게 된다(S655). 한편, 패킷이 수신할 수 있는 정상적인 패킷이 아니라면, 제1메모리(130)에 저장하기 전에 폐기하게 된다(S660).
그리고 나서, 패킷수신상태를 점검하는 단계가 진행된다(S670). 그 점검결과에 따라서 MAC 제어기(121)의 조정여부를 결정하고, 조정하게 된다(S680). 최종적으로, 네트워크 통신노드(100) 자체가 턴-오프 되기 전까지는 연속적으로 패킷을 수신하면서, 그 수신상태를 점검하게 된다(S690).
한편, 도 8은 도 7의 데이터통신방법 중에서 패킷수신상태를 점검하고 MAC제어기(121)를 조정하는 방법에 대한 제1실시예를 설명하기 위한 흐름도이다. 도 8에 따르면, 먼저, 수신제한기준이 설정되어 있는지 판단하는 단계가 진행된다(S681). 수신제한기준은 제1메모리(130)의 용량을 바탕으로 설정될 수도 있고, 네트워크 통신노드(100)자체의 패킷수신속도를 바탕으로 설정될 수도 있다. 또한, 단위 시간당 수신되는 패킷의 개수를 바탕으로 설정될 수 있다. 이러한 수신제한기준은 네트워크 통신노드(100)의 개발자 또는 사용자에 의해 기 설정되어 제2메모리(140)에 기록됨으로써, 제어부(110)가 이를 독취하여 사용할 수 있다.
제1메모리(130) 용량을 바탕으로 설정된다는 것은, 총 사용할 수 있는 제1메모리(130)에서 현재 사용중인, 즉, 상위 프로토콜 계층 또는 응용프로그램에서 처리가 끝나지 않은 패킷이 저장되어 있는 제1메모리(130) 공간을 확인하여 일정한 용량이 채워진 상태가 되면, 더 이상의 패킷 수신을 제한하도록 한다는 것이다.
한편, 패킷수신속도를 바탕으로 설정된다는 것은, 일정기간동안 수신된 데이터의 크기를 검사하여 수신속도를 측정한 후, 네트워크 시스템의 성능을 고려하여 적당한 수신속도를 초과하는 경우에는 더 이상의 패킷 수신을 제한하도록 한다는 것이다. 예를 들면, 적당한 수신속도가 100 KB/sec 정도인 네트워크 통신노드(100)에 150 KB/sec의 데이터 수신속도가 측정되면 수신을 제한한다는 것이다.
제어부(110)는 수신제한기준의 초과여부를 판단하여(S683), 초과되었다면 MAC 제어기(121)를 조정하여 소정 종류의 패킷에 대하여 수신을 제한하게 된다(S685). 수신이 제한되는 패킷은 상술한 바와 같이 도 6에 도시된 유저인터페이스 창(500)을 통해 설정될 수 있다. 한편, 수신속도를 바탕으로 수신제한기준을 정한 경우도, 도 8의 흐름도에 따라 처리될 수 있다.
도 9는 도 7의 데이터통신방법 중에서 패킷수신상태를 점검하고 MAC제어기(121)를 조정하는 방법에 대한 제2실시예를 설명하기 위한 흐름도이다. 도 9에 따르면, 제1메모리(130)의 용량을 기준으로, 상위 수신제한기준 뿐만 아니 라 하위 수신제한기준까지 추가적으로 설정하게 된다. 이에 따라, 일단 상위 수신제한기준을 초과하여 수신이 제한되게 되면, 소정 패킷이 처리되어 상위 수신제한기준 이하로 메모리 용량이 확보되더라도 일정한 수준까지 제1메모리(130)의 용량이 확보되지 않으면 수신제한상태를 계속 유지하게 된다. 이 후에, 제1메모리(130)의 용량이 하위 수신제한기준이하로 떨어지게 되면 수신제한상태를 해제하도록 한다. 즉, 상위 수신제한기준만을 설정하여 놓은 경우, 그 수신제한기준을 벗어났다고 판단되어 바로 수신제한을 해제하게 되면, 약간의 패킷이 뒤이어 수신되게 되면 다시 수신제한기준을 초과하게 되어 수신제한상태로 MAC 제어기(121)를 재조정하여야 하므로, 제어부(110)에 부담이 따르게 된다. 따라서, 일정한 용량이 확보될 때까지 수신 제한상태를 유지하도록 하기 위해서, 하위 수신제한기준을 추가적으로 설정하게 된다.
제2실시예에 따라서 수신제한기준을 설정한 경우, 먼저, 수신제한기준이 설정되어 있는지 판단한 후(S781), 그 기준을 초과하였는지 판단하게 된다(S782). 상위 수신제한기준을 초과하였다고 판단되면, MAC 제어기(121)를 조정하여 패킷수신제한 상태를 설정하게 된다(S783).
다음으로, 제1메모리(130)의 저장상태가 하위 수신제한기준에 미달되는지를 판단한다(S784). 하위 기준에 미달되었다면, MAC 제어기(121)를 재조정하여 수신제한상태를 해제하게 된다(S785). 즉, MAC 제어기(121)에 처음 설정된 주소값들을 할당하게 된다.
도 10은 도 7의 데이터통신방법 중에서 패킷수신상태를 점검하고 MAC제어기(121)를 조정하는 방법에 대한 제3실시예를 설명하기 위한 흐름도이다. 제3실시예에 따르면, 수신제한기준 초과여부에 따라 수신제한여부를 결정하는 것이 아니라, 제어부(110)가 소정의 연산작업을 수행중인지 여부에 따라 수신제한을 결정하게 된다.
먼저, 현재 소정패킷에 대하여 수신을 제한하고 있는 상태인지 판단한다(S881). 수신제한이 설정되어 있는 경우, 제어부(110)가 소정 작업의 수행이 완료하였는지 판단한다(S882). 작업수행이 완료되었다면, MAC 제어기(121)를 재조정하여 수신제한상태를 해제하게 된다(S883).
한편, 수신제한이 설정되지 않은 상태에서, 제어부(110)가 소정 작업의 수행을 개시하였다고 판단되면(S884), MAC 제어기(121)를 재조정하여 소정 패킷에 대하여 수신을 제한하도록 한다(S885).
제3실시예는, 불필요한 데이터가 계속적으로 수신되어 노드자체에 연산부담을 가져와서 노드가 수행할 본연의 작업에 영향을 미치게 되는 것을 방지하기 위한 것이다. 네트워크 프린터를 예로 들어, 제 3실시예를 구체적으로 설명하면 다음과 같다. 즉, 네트워크 프린터에 대해서 네트워크로 연결된 사용자 PC에서 인쇄명령이 수신되면, 네트워크 프린터는 인쇄작업을 수행하게 된다. 이 경우, 인쇄작업이 진행중인지 여부에 따라서 수신제한여부를 적응적으로 결정할 수 있도록 할 수 있다. 즉, 인쇄작업을 수행중에 데이터 폭주가 감지되면, 수신제한이 설정되어 있지 않더라도 MAC 제어기(121)를 수신제한설정상태를 재조정하여 특정 패킷에 대하여 수신을 제한하도록 할 수 있다. 이 때, 특정 패킷에 대하여 수신이 제한되고 있는 상태 에서도 폭주현상이 계속된다면, 수신제한되는 패킷의 종류를 확대하여 네트워크 프린트가 본연의 작업, 즉, 프린팅 동작에 오동작을 일으키는 것을 방지할 수 있게 된다.
도 11은 본 발명의 또다른 실시예에 따라서 수신제한동작을 적응적으로 실행하는 네트워크 프린터(200)의 구성을 나타내는 블럭도이다. 도 7에 따르면, 본 네트워크 프린터(200)는 제어부(210), 네트워크 통신모듈(220), 제1메모리(230), 제2메모리(240), 및 엔진유닛(250)을 포함한다.
제1메모리(230)는 네트워크 통신모듈(220)로부터 수신되는 패킷이 기록되는 부분이며, 제2메모리(240)는 패킷 수신 동작을 제어하기 위한 수신제한기준 및 수신제한기능 설정여부등이 기록되는 부분이다.
네트워크 통신모듈(220)은 도 5에 도시된 바와 같이, MAC 제어기(221) 및 데이터송수신부(223)를 포함할 수 있다. 이에 따라, 네트워크 통신모듈(220)은 네트워크로 연결된 외부 PC 등으로부터 소정 패킷을 수신하여 제1메모리(230)에 기록하고, 제어부(210)로 소정의 인터럽트 신호를 전송하여 통지하게 된다.
제어부(210)는 네트워크 통신모듈(220)을 통해 수신되는 패킷의 개수, 용량, 또는 전송속도 등을 확인하여 현재 패킷이 정상적으로 수신되는 상태인지 또는 폭주상태인지를 판단한다. 이 경우, 제2메모리(240)에 기록된 수신제한기준을 독취하여 정상수신상태인지 폭주상태인지를 판단할 수 있다. 간단하게는, 네트워크 통신모듈(220)을 통해 수신되는 패킷의 개수를 카운팅하여, 제2메모리(240)에 기록된 소정의 임계값 이하라면 정상수신상태로 보고, 임계값을 초과하면 폭주상태로 볼 수 있다. 임계값은 제어부(210)의 패킷처리속도, 연산능력, 또는 제어부(210)와 각 구성유닛을 연결하는 시스템버스(system bus)에서의 전송용량 등을 고려하여 실험적으로 최적값을 결정할 수 있다.
한편, 제어부(210)는 네트워크 통신모듈(220)을 통해 소정의 프린팅 언어로 작성된 인쇄대상데이터가 수신되면, 소정의 이미지데이터로 변환하는 랜더링(randering) 작업을 수행한 후, 엔진유닛(250)으로 전송한다. 이 경우, 이미지데이터는 비트맵이미지가 될 수 있다. 엔진유닛(250)은 용지상에 실제로 인쇄하는 역할을 하는 부분이다. 레이저 프린터의 경우, 급지롤러, 감광체 드럼(OPC drum), 현상기(developing unit), 대전유닛(charging unit), LSU(Laser Scanning Unit), 전사유닛(transferring unit), 정착유닛(fusing unit)등이 엔진유닛(250)에 포함된다.
제어부(210)는 네트워크 통신모듈(220)을 통한 패킷의 수신상태가 현재 폭주상태인 경우, 현재 인쇄작업을 수행중인지를 확인한다. 인쇄작업 중이라면, 제2메모리(240)로부터 현재 수신제한상태가 설정되어 있는지 확인한다. 수신제한상태가 설정되어 있다면, 제어부(210)는 MAC 제어기(221)를 제어하여 특정종류의 패킷에 대하여 수신을 제한한다. 예를 들어, 브로드캐스트 패킷 및 멀티캐스트 패킷에 대하여 수신제한이 설정되어 있다면, 네트워크 통신모듈(220)내의 MAC 제어기(221)는 이러한 패킷에 대하여 수신되는 즉시 폐기하도록 한다. 수신제한이 설정되어 있지 않다면 제어부(210)는 MAC 제어기(221)의 수신제한상태를 재조정하여 특정 종류의 패킷에 대하여 수신제한을 하도록 한다.
한편, 제어부(210)는 주기적으로 패킷수신상태를 점검하여 현재 수신제한이 설정되어 있는 상태에서도 폭주상태가 계속되고 있다면, 수신제한되는 패킷의 범위를 확대하게 된다. 즉, 브로드캐스트 패킷 및 멀티캐스트 패킷 뿐 아니라, 유니캐스트 패킷에 대해서도 수신을 제한하게 된다.
한편, 제어부(210)의 렌더링 작업은 인쇄대상데이터의 매 페이지(page)단위로 이루어진다. 따라서, 하나의 페이지에 대해서 렌더링이 완료되어 엔진유닛(250)으로 전송됨으로써 인쇄작업이 수행되고 있다면, 다음 페이지에 대한 렌더링이 시작되기 전까지는 패킷을 수신할 여지가 있다. 즉, 전 패킷에 대하여 수신제한상태가 설정되어 있는 상태에서, 한 페이지의 렌더링이 완료되면 다시 특정 종류의 패킷에 대해서만 수신제한상태를 설정하도록 한다. 이를 위해, 제어부(210)는 각 페이지의 어느 부분을 렌더링하고 있는지 확인하게 된다. 즉, 각 페이지를 수개의 밴드(band)로 나눈 경우, 마지막 밴드 부분에 대하여 렌더링이 진행중이라면 제어부(210)는 수신제한상태를 완화시키게 된다.
또한, 마지막 페이지까지 인쇄작업이 완료되거나, 폭주상태가 해결되었다고 판단되면, 다시 원래의 상태로 복귀하도록 한다. 즉, 모든 패킷에 대하여 수신을 허용하고 있었다면 수신제한상태를 완전해제하고, 특정 종류의 패킷에 대하여 수신제한하고 있었다면 수신제한상태를 완화하게 된다. 이에 따라, 패킷 폭주로 인한 네트워크 프린터(200)의 프린팅 오동작을 방지할 수 있게 된다.
한편, 도 12는 도 11에 도시된 네트워크 프린터(200)에서의 데이터처리방법을 설명하기 위한 흐름도이다. 도 12에 따르면, 네트워크 프린터(200)의 제어부(210)는 외부로부터 수신되는 패킷을 카운팅하여, 단위시간당 수신되는 패킷수가 소정의 임계값을 초과하는 지 여부를 판단한다(S910).
이에 따라, 임계값을 초과한다고 판단되면, 네트워크 프린터(200)가 현재 인쇄동작을 수행하고 있는지 판단한다(S920). 한편, 임계값 이하이거나, 현재 인쇄작업을 수행하고 있지 않은 상태라면, 도 7 내지 도 9에 도시된 바와 같이 데이터 수신여부를 결정할 수 있다(S980).
네트워크 프린터(200)가 현재 인쇄작업을 수행하고 있다면, 제2메모리(240)로부터 특정 패킷에 대한 수신제한이 설정되었는지 확인한다(S930). 이에 따라, 수신제한이 설정되어 있다면, 수신제한될 패킷의 종류를 제2메모리(240)로부터 독취하여 그러한 패킷은 수신 즉시 폐기하도록 한다(S950).
한편, 수신제한이 설정되어 있지 않다면 기 설정된 특정 패킷 종류에 대하여 자동적으로 수신제한을 설정하게 된다(S940). 이에 따라, 그러한 패킷은 수신 즉시 폐기하도록 한다(S950).
이러한 상태에서, 계속 인쇄작업이 수행되고 있다면 주기적으로 패킷수를 점검하여 현재 데이터 폭주상태인지를 확인하게 된다(S960). 이에 따라, 수신제한이 이루어지고 있음에도 불구하고 데이터 폭주상태가 해소되지 않았다고 판단되면, 모든 종류의 패킷에 대하여 수신을 제한하게 된다(S970).
이러한 상태에서 인쇄작업이 종료되었다고 판단되면(S990), 원 수신제한상태로 복귀하게 된다(S995). 즉, 수신제한이 설정되지 않은 상태였다면 수신제한을 해제하고, 특정 종류의 패킷에 대해서만 수신제한이 설정되어 있었다면 그외의 패킷 에 대해서는 수신제한을 해제하게 된다. 이 경우, 상술한 바와 같이, 각 페이지에 대한 렌더링이 완료되면 다음 페이지에 대한 렌더링 작업이 수행되기 전까지의 시간동안 수신제한상태를 해제할 수도 있다.
즉, 본 실시예에 따르면, 2단계의 수신제한상태 조정과정을 거치게 된다. 이에 따라, 네트워크 프린터(200)는 패킷 수신동작을 병행하면서도 패킷의 폭주현상에 의해 프린팅 작업에 영향을 받지 않게 된다.
본 네트워크 프린터의 활용예를 구체적으로 설명하면, 바이러스에 의해 네트워크 상에 ARP request 패킷이 폭주하는 상태가 발생할 수 있다. 이 경우, 데이터 수신상태가 기준값을 초과하는 것으로 판단되고, 브로드캐스트 패킷이 수신제한될 패킷으로 설정된 경우, ARP requeat 패킷과 같은 브로드캐스트 패킷을 수신 즉시 폐기하게 된다. 특히, 인쇄작업이 계속 진행 중인 상태에서 브로드캐스트 패킷에 대하여 수신제한을 하더라도 계속 폭주현상이 감지되면, 모든 패킷에 대하여 수신제한을 설정하여 인쇄작업에 영향을 받지 않도록 한다. 이 경우, 바람직하게는, 최종적으로 인쇄작업이 종료되었다고 판단되면, 수신제한상태를 완화하여 원 상태로 복귀하도록 할 수 있다.
이상 설명한 바와 같이, 본 네트워크 통신노드, 및 이를 포함하는 네트워크 시스템에서는 데이터 수신이 폭주하는지를 모니터링하여 폭주상태로 판단되면 소정 패킷의 수신을 제한함으로써 폭주상태를 신속하게 해소할 수 있다. 특히, 네트워크에 바이러스 등에 의하여 네트워크 데이터가 비정상적으로 폭주하거나, 악의적인 사용자의 네트워크 공격으로 의하여 데이터의 수신이 폭주하게 될 때, 기존의 네트워크 동작을 안정적으로 유지할 수 있게 된다.
또한, 네트워크 프린터의 경우, 인쇄작업을 수행중일 때 불필요한 패킷의 수신을 제한함으로써 인쇄작업 시의 오동작을 방지할 수 있게 된다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (19)

  1. 네트워크로 연결된 소정의 상대노드로부터 소정의 패킷을 수신하는 네트워크 통신모듈;
    소정의 수신제한기준에 대한 정보 및 상기 수신제한기준이 충족된 경우에 수신이 제한될 패킷종류에 대한 정보가 저장된 메모리; 및
    상기 네트워크 통신모듈의 패킷수신상태를 점검하여 상기 수신제한기준을 충족하면, 상기 네트워크 통신 모듈을 제어하여 상기 패킷 종류 정보에 대응되는 종류의 패킷에 대하여 수신을 제한하는 제어부;를 포함하는 것을 특징으로 하는 네트워크 통신노드.
  2. 제1항에 있어서,
    상기 수신제한기준을 충족한 경우에 수신제한될 패킷종류를 지정하는 지정명령을 외부입력장치로부터 수신하는 입출력 인터페이스;를 더 포함하며,
    상기 제어부는 상기 지정명령에 의해 지정된 소정 패킷종류정보를 상기 메모리에 기록하는 것을 특징으로 하는 네트워크 통신노드.
  3. 제2항에 있어서,
    상기 네트워크 통신모듈은,
    상기 상대노드와 연결되는 링크를 개설하여 상기 링크를 통해 상기 패킷을 수신하는 데이터 송수신부; 및
    상기 제어부에 의해 수신제한상태로 조정되면, 상기 메모리로부터 상기 패킷종류정보를 독취하여 상기 데이터 송수신부를 통해 수신되는 패킷 중 수신가능한 패킷만을 상기 메모리에 저장하도록 하는 MAC 제어기;를 포함하는 것을 특징으로 하는 네트워크 통신노드.
  4. 제3항에 있어서,
    상기 수신제한기준은 상기 메모리 내에서의 소정의 기준용량으로 결정되며, 상기 제어부는 상기 메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 기준용량을 초과하면 상기 수신제한기준을 충족하였다고 판단하고 상기 수신제한상태를 설정하는 것을 특징으로 하는 네트워크 통신노드.
  5. 제3항에 있어서,
    상기 수신제한기준은 상기 메모리 내에서의 소정의 상위기준용량 및 하위기준용량으로 구분되어 결정되며, 상기 제어부는 상기 메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 상위기준용량을 초과하면 상기 수신제한상태를 설정하고, 상기 메모리에 저장된 패킷이 처리되어 상기 하위기준용량 이하의 메모리 용량이 확보되면 상기 수신제한상태를 해제하도록 하는 것을 특징으로 하는 네트워크 통신노드.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 제어부는, 브로드캐스트 패킷, 멀티캐스트 패킷 및 유니캐스트 패킷 중 적어도 하나의 패킷종류에 대하여 수신제한상태의 설정여부를 조정하는 것을 특징으로 하는 네트워크 통신노드.
  7. 네트워크로 연결된 상대노드로부터 패킷을 수신하는 데이터송수신부;
    소정의 이미지데이터에 따라 인쇄작업을 수행하는 엔진유닛;
    상기 인쇄작업 수행 중에 상기 데이터송수신부에서의 패킷수신폭주상태가 감지되면 소정 종류의 패킷에 대한 수신제한상태를 설정하는 제어부; 및
    상기 수신제한상태가 설정되면, 상기 데이터송수신부를 제어함으로써 상기 소정 종류의 패킷에 대하여 수신을 제한하는 MAC 제어기;를 포함하는 것을 특징으로 하는 네트워크 프린터.
  8. 제7항에 있어서,
    상기 제어부는,
    상기 데이터송수신부를 통해 수신되는 패킷의 단위시간당 개수를 확인하여 소정의 임계값과 비교한 후, 상기 임계값을 초과하면 상기 패킷수신폭주상태로 판단하는 것을 특징으로 하는 네트워크 프린터.
  9. 제8항에 있어서,
    상기 상대노드로부터 수신되는 패킷을 저장하는 제1메모리; 및
    상기 패킷수신폭주상태가 발생하였을 경우에 수신제한될 패킷종류에 대한 정보 및 상기 임계값에 대한 정보가 기록되는 제2메모리;를 더 포함하는 것을 특징으로 하는 네트워크 프린터.
  10. 제9항에 있어서,
    상기 제어부는,
    상기 패킷의 수신상태를 주기적으로 점검하여, 상기 수신제한상태가 설정된 상태 하에서 상기 패킷수신폭주상태가 지속된다고 판단되면 전(全) 종류의 패킷에 대한 수신제한상태를 설정하는 것을 특징으로 하는 네트워크 프린터.
  11. 제10항에 있어서,
    상기 제어부는,
    프린팅 언어로 작성된 소정의 인쇄대상데이터를 매 페이지 별로 렌더링하여 상기 이미지데이터로 변환한 후, 상기 엔진유닛으로 전송하여 상기 인쇄작업을 수행하도록 하며, 각 페이지에 대한 렌더링이 완료되면 다음 페이지에 대한 렌더링이 개시되기 전까지 전 종류의 패킷에 대한 상기 수신제한상태를 해제하는 것을 특징으로 하는 네트워크 프린터.
  12. 네트워크를 통해 연결된 소정의 상대노드와 통신을 수행하는 네트워크 통신 노드의 데이터통신방법에 있어서,
    (a) 상기 네트워크 통신노드가 상기 상대노드로부터 소정의 패킷을 수신하는 단계;
    (b) 상기 패킷의 수신상태를 점검하여, 소정의 수신제한기준을 충족하는지 확인하는 단계;
    (c) 상기 수신제한기준을 충족한다고 판단되면, 기 설정된 소정 종류의 패킷에 대하여 수신제한상태를 설정하는 단계; 및
    (d) 상기 수신제한상태가 설정된 종류의 패킷에 대하여 수신을 제한하는 단계;를 포함하는 것을 특징으로 하는 데이터통신방법.
  13. 제12항에 있어서,
    상기 수신제한기준이 충족되면 수신이 제한되는 패킷종류를 설정하는 단계; 및
    상기 패킷종류가 설정되지 않은 경우, 상기 네트워크 통신노드의 초기설정상태에 따라 수신제한될 패킷종류를 설정하는 단계;를 더 포함하는 것을 특징으로 하는 데이터통신방법.
  14. 제13항에 있어서,
    상기 (c)단계는,
    상기 네트워크 통신노드에 구비된 메모리 내에서의 소정의 기준용량을 상기 수신제한기준으로 이용하여, 상기 메모리내에서 기 수신된 패킷이 차지하는 저장용량이 상기 기준용량을 초과하면 상기 수신제한기준을 충족한다고 판단하는 것을 특징으로 하는 데이터통신방법.
  15. 제13항에 있어서,
    상기 (c)단계는,
    상기 네트워크 통신노드에 구비된 메모리 내에서의 소정의 상위기준용량 및 하위기준용량을 상기 수신제한기준으로 이용하여, 상기 메모리 내에서 기 수신된 패킷이 차지하는 저장용량이 상기 상위기준용량을 초과하면 상기 수신제한기준을 충족한다고 판단하고, 상기 패킷이 처리되어 상기 하위기준용량 이하의 메모리용량이 확보되면 상기 수신제한기준에 미달된다고 판단하여 상기 수신제한상태를 해제하는 것을 특징으로 하는 데이터통신방법.
  16. 네트워크를 통해 연결된 상대노드로부터 패킷을 수신하는 네트워크 프린터의 데이터수신방법에 있어서,
    (a) 상기 상대노드로부터 소정의 인쇄대상데이터를 수신하는 단계;
    (b) 상기 인쇄대상데이터를 소정의 이미지데이터로 변환하여 용지상에 인쇄하는 인쇄작업을 수행하는 단계;
    (c) 상기 인쇄작업 수행중에 상기 상대노드로부터 수신되는 패킷의 수신상태를 점검하는 단계;
    (d) 상기 수신상태가 패킷폭주상태라고 판단되면, 소정 종류의 패킷에 대하여 수신제한상태를 설정하는 단계; 및
    (e) 상기 수신제한상태가 설정되면, 상기 소정 종류의 패킷에 대하여 수신을 제한하는 단계;를 포함하는 것을 특징으로 하는 네트워크 프린터에서의 데이터수신방법.
  17. 제16항에 있어서,
    상기 (d)단계는,
    상기 상대노드로부터 수신되는 패킷의 단위시간당 개수를 확인하는 단계;
    상기 단위시간당 개수를 소정의 임계값과 비교하는 단계; 및
    상기 단위시간당 개수가 상기 임계값을 초과하면 상기 패킷폭주상태로 판단하는 단계;를 포함하는 것을 특징으로 하는 네트워크 프린터에서의 데이터수신방법.
  18. 제17항에 있어서,
    상기 패킷수신상태를 주기적으로 점검하는 단계; 및
    상기 수신제한상태가 설정된 상태 하에서 상기 패킷수신폭주상태가 지속된다고 판단되면 전(全) 종류의 패킷에 대하여 수신제한상태를 설정하는 단계;를 더 포함하는 것을 특징으로 하는 네트워크 프린터에서의 데이터수신방법.
  19. 제18항에 있어서,
    상기 상대노드로부터 소정의 프린팅 언어로 작성된 인쇄대상데이터가 수신되면, 상기 인쇄대상데이터를 매 페이지 단위로 소정의 이미지데이터로 변환하는 렌더링 작업을 수행하는 단계; 및
    각 페이지에 대한 상기 렌더링 작업이 완료되면, 다음 페이지에 대한 렌더링 작업이 시작되기 전까지 전 종류의 패킷에 대한 상기 수신제한상태를 해제하는 단계;를 더 포함하는 것을 특징으로 하는 네트워크 프린터에서의 데이터수신방법.
KR1020040033982A 2003-12-09 2004-05-13 패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법 KR100600794B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/986,805 US20050122973A1 (en) 2003-12-09 2004-11-15 Network node capable of restricting a packet receiving activity during packet congestion and method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20030089014 2003-12-09
KR1020030089014 2003-12-09

Publications (2)

Publication Number Publication Date
KR20050056109A KR20050056109A (ko) 2005-06-14
KR100600794B1 true KR100600794B1 (ko) 2006-07-14

Family

ID=37250864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040033982A KR100600794B1 (ko) 2003-12-09 2004-05-13 패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법

Country Status (1)

Country Link
KR (1) KR100600794B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100644637B1 (ko) * 2004-10-11 2006-11-10 삼성전자주식회사 Smb 프로토콜을 이용한 데이터 인쇄 장치 및 방법
KR101207280B1 (ko) 2006-11-28 2012-12-03 삼성전자주식회사 화상형성장치 및 그 제어방법과, 인터페이스장치

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05175997A (ja) * 1991-12-25 1993-07-13 Mitsubishi Electric Corp 輻輳制御処理方法
JPH05292126A (ja) * 1992-04-16 1993-11-05 Nec Corp 交換機の輻輳制御方式
KR970056218A (ko) * 1995-12-22 1997-07-31 양승택 멀티캐스트 통신의 폭주 제어방법
KR20000042909A (ko) * 1998-12-28 2000-07-15 윤종용 이더넷에서 흐름 제어장치 및 방법
US20010012296A1 (en) * 2000-01-25 2001-08-09 Burgess Jon J. Multi-port network communication device with selective mac address filtering
KR20020040471A (ko) * 2000-11-24 2002-05-30 구자홍 이더넷 시스템에서 멀티포트 브리지의 혼잡 제어 장치 및방법
KR20030009887A (ko) * 2001-07-24 2003-02-05 주식회사 케이티 서비스거부 공격 차단시스템 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05175997A (ja) * 1991-12-25 1993-07-13 Mitsubishi Electric Corp 輻輳制御処理方法
JPH05292126A (ja) * 1992-04-16 1993-11-05 Nec Corp 交換機の輻輳制御方式
KR970056218A (ko) * 1995-12-22 1997-07-31 양승택 멀티캐스트 통신의 폭주 제어방법
KR20000042909A (ko) * 1998-12-28 2000-07-15 윤종용 이더넷에서 흐름 제어장치 및 방법
US20010012296A1 (en) * 2000-01-25 2001-08-09 Burgess Jon J. Multi-port network communication device with selective mac address filtering
KR20020040471A (ko) * 2000-11-24 2002-05-30 구자홍 이더넷 시스템에서 멀티포트 브리지의 혼잡 제어 장치 및방법
KR20030009887A (ko) * 2001-07-24 2003-02-05 주식회사 케이티 서비스거부 공격 차단시스템 및 방법

Also Published As

Publication number Publication date
KR20050056109A (ko) 2005-06-14

Similar Documents

Publication Publication Date Title
JP3786152B2 (ja) 印刷システム、印刷方法及びプリンタ
JP4984903B2 (ja) 管理装置、及びプログラム
JP4101860B2 (ja) 多機能印刷システムのための割込システム
US8619290B2 (en) Image forming apparatus, image forming system, and image forming method
JPH10289074A (ja) 多機能印刷システムにおけるジョブ処理管理方法
JPH1131055A (ja) 多機能印刷システムにおけるキュー管理方法
US7307994B2 (en) Controller area network (CAN) based communication system with multiple bus connected nodes
US20140313531A1 (en) Information processing apparatus
JP6289057B2 (ja) 通信装置とその制御方法、印刷装置とその制御方法、及びプログラム
KR100600794B1 (ko) 패킷폭주시 패킷수신동작을 제한하는 네트워크 통신노드및 그 방법
JP3791089B2 (ja) ネットワーク対応型印刷装置及び印刷方法及びネットワーク印刷システム
US20040252323A1 (en) Image processing system and image scanning device
US20050122973A1 (en) Network node capable of restricting a packet receiving activity during packet congestion and method thereof
US6731395B1 (en) Network printer with watch dog timer
US8270017B2 (en) Network card device for determining permissibility for processing data from a data source and method of controlling the same
JP2009015716A (ja) 複数ipアドレスによる画像形成装置
JP2014135584A (ja) 画像形成装置
JPH10320156A (ja) 多機能印刷システム
JP3022104B2 (ja) プリンタ装置
JP5417895B2 (ja) 割込制御装置および画像形成装置
JP3707218B2 (ja) 印刷システム、印刷方法及びプリンタ
JP2006076175A (ja) 画像形成装置及びその制御方法
JPH11146109A (ja) 画像読取装置
JP2007066093A (ja) 印刷システムおよび印刷装置
JP2000181660A (ja) 画像処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee