KR100312865B1 - 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법 - Google Patents

네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법 Download PDF

Info

Publication number
KR100312865B1
KR100312865B1 KR1020000009672A KR20000009672A KR100312865B1 KR 100312865 B1 KR100312865 B1 KR 100312865B1 KR 1020000009672 A KR1020000009672 A KR 1020000009672A KR 20000009672 A KR20000009672 A KR 20000009672A KR 100312865 B1 KR100312865 B1 KR 100312865B1
Authority
KR
South Korea
Prior art keywords
network
printer
packet data
packet
internal
Prior art date
Application number
KR1020000009672A
Other languages
English (en)
Other versions
KR20010084545A (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 KR1020000009672A priority Critical patent/KR100312865B1/ko
Publication of KR20010084545A publication Critical patent/KR20010084545A/ko
Application granted granted Critical
Publication of KR100312865B1 publication Critical patent/KR100312865B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은 통신 네트워크상에서 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치에 있어서, 한 포트를 통해 상기 프린터에 접속되며, 상기 프린터와의 프린팅 데이터 송/수신 인터페이스를 수행하는 프린터 인터페이스부와, 다른 한 포트를 통해 상기 프린터와 함께 연결되는 내부 PC에 접속되며, 상기 내부 PC와의 데이터 송/수신 인터페이스를 수행하는 PC 인터페이스부와, 상기 멀티포트 네트워크 정합장치의 동작 프로그램과 패킷 데이터 송/수신을 위한 네트워크 프로토콜을 저장하는 메모리와, 상기 프린터 및 내부 PC로부터 수신되는 데이터를 패킷 데이터화하여 통신 네트워크상으로 전송하며 상기 통신 네트워크상에서 수신되는 패킷 데이터를 해당 프린터 및 내부 PC로 전송하는 네트워크 접속부와, 상기 멀티포트 네트워크 정합장치의 전반적인 동작을 제어하며, 상기 프린터와 내부 PC의 인터페이스부 및 상기 네트워크 접속부를 통해 송/수신되는 패킷데이터를 제어하는 MPU를 포함하여 구성함을 특징으로 한다.

Description

네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치 및 패킷 데이터 송/수신 방법{MULTI-PORT NETWORK MATCHING APPARATUS FOR NETWORK PRINT SERVER FUNCTION AND METHOD FOR TRANSMITTING/RECEIVING PACKET DATA}
본 발명은 이더넷 네트워크(Ethernet Network)에 관한 것으로, 특히 이더넷 네트워크 환경에서 네트워크 프린트 서버 기능 및 개인용 컴퓨터(Personal Computer: 이하 'PC'라 함)의 네트워크 정합기능을 동시에 제공하는 멀티포트 네트워크 정합장치(Multi-port Network adapter) 및 패킷 데이터(Packer data) 송/수신방법에 관한 것이다.
사무실 컴퓨팅 환경이 네트워크화 되어감에 따라 PC 뿐만이 아니라 주변기기들 즉, 프린터, 스캐너, 복사기, 팩시밀리 등을 사무실내에 설치된 근거리통신망(Local Area Network: LAN)에 접속하여 사용하고자 하는 요구가 많아 지고 있다. PC와 각종 주변기기들을 네트워크화 한다는 것은 고가의 주변기기들을 다수의 사용자가 공유하도록 함으로써 사용효율을 증대 시킬 뿐만 아니라 사무기기 설치 비용을 절감하는데 크게 기여한다.
그러나 각종 사무기기들을 하나의 통신 네트워크에 접속하기 위해서는 각 기기의 특성에 맞는 네트워크 접속 장치를 설치하여야 하고 이를 유지 관리하는 장치 및 인력이 필요하다. 일예로, 네트워크 프린터를 설치하기 위해서는 프린터에 네트워크 접속 장치를 설치한 후 네트워크 프린터 관리 프로그램을 설치하고, 이를 유지, 보수 및 관리 인력을 설정하여야 효율적으로 사용할 수 있다.
즉, 사무실 환경에서 PC와 프린터 등 각종 사무기기들을 근거리통신망에 접속하여 사용하기 위해서는 PC 특성에 맞는 네트워크 접속 카드를 설치하고 사용자 환경에 맞는 네트워크 특성 파라미터들과 프로토콜들을 설치하여야 하는데 이와 같은 설치 동작들은 네트워크 전문가가 아니면 설치하기 어려운 실정이다. 또한 종래 네트워크의 구현에 있어서는, PC와 프린터 등 각각의 장치에 각각 하나씩 대응되는 네트워크 접속 장치들을 설치하여야 하였는데 이는 설치 비용을 증가시키는 단점을 가지고 있다.
한편, 가정에서 점차 보급이 확대되고 있는 가정용 네트워크 환경은 처음에는 두 대 이상의 PC가 서로의 데이터를 공유하고 네트워크 게임을 즐기며 인터넷 사용을 두 명 이상이 함께 각자의 PC에서 즐길 수 있도록 환경을 제공하고 있다.그러나 이와 같은 가정용 네트워크 환경에서 사용자가 프린팅을 하기 위해서는 프린터가 자신의 로컬 포트(Local port) 즉 프린터 포트에 직접 연결된 PC의 전원을 항상 켜야 하는 불편함이 있었으며, 이러한 불편함을 제거 하기 위해서 별도의 네트워크카드를 프린터에 장착하기에는 경제적인 부담이 커지게 된다. 즉, 종래에는 프린터를 사용하기 위해서는 항상 프린터가 연결되어 있는 PC의 전원을 켜야하거나 또는 프린터에 별도의 네트워크 장비를 설치하여 프린터가 PC와는 무관하게 네트워크 기능을 수행할 수 있도록 하는 방법중의 하나만을 사용할 수 있었다.
그러나 상기 전자의 방법은 불필요한 전력을 소비시키며 동시에 PC의 전원을 켜기 위하여 사용자가 장소 이동을 하여 상기 프린터에 연결된 PC의 전원을 켠후 다시 자신의 컴퓨터에 와서 프린팅 작업을 수행하여야 하는 불편함이 있으며, 또한 상기 후자의 방법은 사용자에게 경제적인 부담에 되는 문제점이 있었다.
도 1은 종래 네트워크 프린터 프로토콜 스택을 도시한 것으로, 상기 도 1을 참조하여 종래 기술의 구성 및 동작을 설명한다. PC 응용 프로그램이 전자우편, 네트워크 프린팅 등과 같은 네트워크 서비스를 이용하는 경우, PC에 NIC(Network Interface Card)(17)를 장착하고, TCP/IP, IPX/SPX, Apple Talk, Socket, NETBIOS, NetBEUI 등과 같은 사용하고자 하는 프로토콜 모듈(14)을 설치해야 한다. PC에서 프린팅하는 프로세스(Processes printing data)(11)는 스풀러(Spooler)(12)로 프린팅 데이터를 전송하고, 스풀러(12)는 프로세스(11)가 지정한 프린터의 포트를 모니터하는 포트 모니터(Port Monitor(13)로 프린팅 데이터를 인가한다. 포트 모니터(13)는 하위 계층의 프로토콜(14)로 프린팅 데이터를 인가하고 선택된 하위계층의 프로토콜은 해당 프로토콜에 알맞게 프린팅 데이터를 패킷화 시켜 지정된 프린터로 네트워크를 통해 프린팅 데이터를 전송하게 된다. 마찬가지로 PC가 네트워크 프린팅 대신 자료검색이나 파일 공유 등의 네트워크 기능을 사용할 경우에는 위에서 설명한 과정대신 프로세스 사용 네트워크 서비스(Processes using network services)(18)단계에서 바로 하위의 프로토콜 계층(14)으로 송신하고자 하는 데이터를 인가하며, 이후 과정은 프린팅 데이터가 송신되는 과정과 동일하다.
도 2는 네트워크 프린터 서버를 프린터에 설치할 경우 프린터에서의 프로토콜 스택을 도시한 것이다. 상기 도 2에 보여지는 바와 같이 네트워크 프린트 서버를 프린터에 설치할 경우 PC에서와 마찬가지로 프린터에도 NIC(24)를 장착하고 해당 프로토콜 모듈(21)를 설치해야 한다.
도 3에는 프린터에 별도의 네트워크 서버를 설치하지 않고 전용컴퓨터에 연결하여 네트워크 프린터로 사용하는 이더넷 네트워크의 시스템 구성을 도시하였다. 이와 같은 구성은 대부분의 가정용 네트워크 환경과 일부 서버-클라이언트(Server-Client) 환경에서 사용한다. 상기 도 3과 같은 환경에서는 프린터(30)를 사용하고자 할 때에는 반드시 프린터(30)가 연결된 PC(31)의 전원이 켜져 있어야만 한다. 그렇지 않을 경우에는 프린터(30)를 다른 네트워크 사용자들이 사용할 수 없게 되는 문제점이 있었다.
상술한 바와 같이 종래에는 PC와 프린터를 통신 네트워크상에 연결하기 위해서는 각각의 네트워크 접속 장치를 설치하여야 하는데, 이는 설치 비용을 증가시킬 뿐만아니라 관리상에도 여러가지 복잡한 문제들을 발생시킨다. 즉, 관리상의 한 문제로 네트워크 프린터 사용중 프린팅 오류발생시 PC에 장착된 테트워크 접속 장치에서 문제가 발생하였는지 아니면 프린터에 접속된 네트워크 접속 장치에 문제가 발생하였는지를 어떻게 검출하는지에 대한 문제가 발생하며, 또한 PC와 프린터 각각의 장치에 네트워크 특성에 맞는 네트워크 프로토콜 설치 등 복잡한 설치 절차를 따라야만 하는 문제가 발생하였다.
따라서 본 발명의 목적은 이더넷 네트워크 환경에서 네트워크 프린트 서버 기능 및 PC의 네트워크 정합기능을 동시에 제공하는 멀티포트 네트워크 정합장치 및 패킷 데이터 송/수신방법을 제공함에 있다.
도 1은 종래 네트워크 프린터 프로토콜 스택을 도시한 도면,
도 2는 종래 네트워크 프린터내의 프로토콜 스택을 도시한 도면,
도 3은 종래 PC에 연결된 네트워크 프린터를 사용하는 이더넷 네트워크의 시스템 구성도,
도 4는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치를 통해 네트워크 프린터와 내부 PC를 연결한 이더넷 네트워크의 시스템 구성도,
도 5 및 도 6은 종래 PC용 네트워크 카드와 프린터용 네트워크 카드의 상세 블록 구성도,
도 7은 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치의 상세 블록 구성도,
도 8은 본 발명의 실시 예에 따른 내부 PC(41)의 프로토콜 스택을 도시한 도면,
도 9는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치의 프로토콜 스택을 도시한 도면,
도 10은 본 발명의 실시 예에 따른 내부 PC(41)와 프린터(40)간의 패킷 전송 흐름도,
도 11은 본 발명의 실시 예에 따른 내부 PC로부터 네트워크에 연결된 외부 PC로의 패킷 전송 흐름도,
도 12는 본 발명의 실시 예에 따른 프린터로부터 네트워크에 연결된 외부 PC로의 패킷 전송 흐름도,
도 13은 본 발명의 실시 예에 따른 내부 PC에서 MAC주소 설정을 위한 처리 흐름도,
도 14는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치에서의 패킷 전송 처리 흐름도.
상술한 목적을 달성하기 위한 본 발명은 통신 네트워크상에서 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치에 있어서, 한 포트를 통해 상기 프린터에 접속되며, 상기 프린터와의 프린팅 데이터 송/수신 인터페이스를 수행하는 프린터 인터페이스부와, 다른 한 포트를 통해 상기 프린터와 함께 연결되는 내부 PC에 접속되며, 상기 내부 PC와의 데이터 송/수신 인터페이스를 수행하는 PC 인터페이스부와, 상기 멀티포트 네트워크 정합장치의 동작 프로그램과 패킷 데이터 송/수신을 위한 네트워크 프로토콜을 저장하는 메모리와, 상기 프린터 및 내부 PC로부터 수신되는 데이터를 패킷 데이터화하여 통신 네트워크상으로 전송하며 상기통신 네트워크상에서 수신되는 패킷 데이터를 해당 프린터 및 내부 PC로 전송하는 네트워크 접속부와, 상기 멀티포트 네트워크 정합장치의 전반적인 동작을 제어하며, 상기 프린터와 내부 PC의 인터페이스부 및 상기 네트워크 접속부를 통해 송/수신되는 패킷데이터를 제어하는 MPU를 포함하여 구성함을 특징으로 한다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 상기 첨부 도면의 구성 요소들에 참조부호를 부가함에 있어서는 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의하여야 한다. 또한 하기 설명 및 첨부 도면에서 구체적인 처리 흐름과 같은 많은 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세들없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다. 그리고 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
도 4는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치를 통해 네트워크 프린터와 내부 PC를 연결한 이더넷 네트워크의 시스템 구성을 도시한 것이다. 상기 도 4에서 보여지는 바와 같이 본 발명의 실시 예에서는 하나의 멀티포트 네트워크 정합장치(42)에 두 개의 접속포트를 설정하고 하나의 포트는 내부 PC(41)에 그리고 다른 하나의 포트는 프린터(40) 접속용으로 설정하여 사용토록 함으로써 각종 네트워크 설치를 쉽게할 수 있도록 하였으며, 또한 네트워크 설치 비용을 절감하도록 하였다.
도 5와 도 6는 각각 종래 PC용 네트워크 카드와 프린터용 네트워크 카드의상세 블록 구성을 도시한 것으로, 상기 도 5 및 도 6을 참조하면, MPU(Main Processor Unit)(53,63)는 네트워크 카드의 중앙연산장치 및 네트워크 카드의 전반적인 동작을 제어한다. 네트워크 접속부(57,67)내 네트워크 제어부(Network Controller)(54,64)는 일반적으로 이더넷 제어기(Ethernet Controller)나 토큰링 제어기(Token Ring Controller) 등과 같이 DLL(Data Link Layer)까지를 담당한다. 네트웍 전송부(Network Tranceiver)(55,65)는 수신된 패킷 데이터를 전기적인 신호로 변환하여 네트워크 케이블을 통해 전송하거나 네트워크 케이블로부터 전기적 신호를 수신되는 패킷 데이터를 수신한다. 메모리(56,66)는 네트워크 카드의 동작에 필요한 프로그램과 데이터 송/수신을 위한 네트워크 프로토콜을 저장하는 비휘발성 메모리와 이러한 일련의 과정에서 필요한 데이터 임시 저장장소로 사용하는 메모리 등을 포함한다.
PC 인터페이스부(I/F)(52)는 PC(50)와 네트워크 카드(51)간의 송/수신되는 데이터를 인터페이스하며, 네트워크 카드를 설치하는 방식에 따라 PC내장 방식인 경우에는 PCI, ISA, EISA, SCSI 등의 인터페이스 방식을 사용하며, PC 외부에 장착하는 방식인 경우에는 IEEE1284, USB, RS-232C 등과 같은 인터페이스 방식을 사용한다. 프린터 인터페이스부(I/F)(62)는 프린터(60)와 네트워크 카드(61)간의 송/수신되는 데이터를 인터페이스하며, PC와 마찬가지로 프린터 내부나 외부에 설치하는 방식에 따라, PCI,ISA,공유메모리 방식, IEEE1284, USB등의 방식을 사용한다. 즉, 종래 네트워크 연결방식에서는 PC(50)는 상기 도 5에서와 같은 별도의 PC전용 네트워크 카드(51)를 프린터(60)에는 도 6에서와 같은 프린터 전용 네트워크 카드(61)를 각각 별도로 장착하여야만 하였다.
따라서 본 발명에서는 상기 도 5와 도 6에서 보여지듯이 인터페이스 방식만을 제외하고는 PC와 프린터의 네트워크 카드에 있어 대부분의 하드웨어 구성이 동일한 점을 착안하여 도 7에서와 같은 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치를 제안하게 되었다.
상기 도 7에서 보여지는 바와 같이 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치(42)는 각각 하나의 MPU(72), 네트웍 제어부(73)와 네트워크 전송부(74)를 포함한 하나의 네트워크 접속부(79), 그리고 메모리(75)로 구성된다. MPU(72)는 내부 PC(41)와 네트워크 프린터(40)와의 인터페이스를 위하여 프린터 I/F부(70)와 PC I/F부(71)를 통해 각각 프린터(40)와 PC(41)에 연결된다. PC(41)와 프린터(40)는 하나의 네트워크 카드 즉, 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치(42)를 통하여 통신 네트워크(LAN)상에 접속되어 네트워크에 연결되어 있는 다른 PC(76)나 워크스테이션(Workstation)(78)과 통신을 할 수 있으며, 또한 PC(41)는 동일한 네트워크 카드(42)에 연결되어 있는 프린터(40)로 네트워크 접속부(79)를 통하지 않고 바로 프린팅 데이터를 MPU(72)와 프린터 I/F부(70)를 통하여 보낼 수 있으므로 보다 신속한 데이터 전송이 가능해 진다. 또한 프린터(40)는 네트워크 카드(40)를 통해 통신 네트워크(LAN)상에 연결되어 있으므로 다른 PC(76)나 워크스테이션(78)도 프린터(40)를 이용하여 통신 네트워크를 통한 프린팅이 가능해 진다.
도 8은 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치에 연결된 내부 PC(41)의 프로토콜 스택을 도시한 것이다. 상기 도 8을 참조하면, I/F부(87)는 USB, 시리얼 포트(Serial Port), 패러렐 포트(Parallel Port)와 같은 외부 접속장치나 PCI, ISA, SCSI 등 내부 CPU(Central Processing Unit) 버스와의 인터페이스 장치를 의미한다. 가상 맥(Virtual MAC)(86)은 물리계층이 MAC(Media Access Control)기능을 제공하지 못하는 경우 상위 프로토콜(84,85)로 MAC기능을 제공해주는 커널 모드 드라이버이다. 가상 맥(86) 드라이버는 상위 프로토콜 계층(84,85)으로부터 받은 패킷을 송신하기 위한 송신 링 버퍼(Transmit Ring Buffer)를 관리한다. 또한 I/F부(87)로부터 받은 패킷을 상위 프로토콜 계층(84,85)으로 전달하기 위한 수신 링 버퍼(Receive Ring Buffer)를 관리한다. 또한 가상 맥(86) 드라이버는 MAC주소와 IP주소를 대응시켜주는 ARP(Address Resolution Protocol)기능도 수행한다. 상기 ARP는 사용자 PC에 있는 응용 프로그램이 다른 PC의 응용 프로그램에게 IP데이터 그램을 보낼 경우, 다른 PC의 MAC주소를 알기 위해 사용된다. 사용자 PC의 가상 맥(86) 드라이버는 다른 PC의 IP 주소 값을 지정한 ARP요청 패킷을 생성하여 네트워크에 전송한다. 그러면 해당 다른 PC의 MAC드라이버는 수신한 ARP요청 패킷을 분석하여 자신의 IP주소값이 지정되어 있는 것을 확인한 다음, IP주소값에 대응되는 MAC을 지정하여 ARP응답패킷을 생성하여 네트워크에 전송한다. 따라서 사용자 PC의 가상 맥(86) 드라이버는 ARP응답 패킷에서 얻은 MAC주소를 이용하여 IP 데이터 그램을 전송하게 되는 것이다.
도 9는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치의 프로토콜 스택을 도시한 것이다. 상기 도 9를 참조하면, 가상 맥(Virtual MAC)(95)은 ARP응답 패킷을 제외한 다른 패킷은 변형하지 않는다. 패킷은 포워딩 펑션(Forwarding Function)(94)이나 하위 PC I/F부(97)로 수신된다. 내부 PC(41)는 자신의 MAC주소를 알기 위해서, 멀티포트 네트워크 정합장치(42)에게 ARP요구 패킷을 전송한다. 그러면 정합장치(42)의 가상 맥(95)은 수신한 ARP요구 패킷의 MAC주소 필드 영역에 내부 PC(41)의 MAC주소를 기록한 다음, 응답패킷으로 변형하여 내부 PC(41)에게 전송한다. LAN I/F부(98)는 PC I/F부(97)를 통하여 수신한 패킷은 MAC(96)이나 가상 맥(95)에 의해 맥 결정 계층부(MAC Decision Layer)(93)로 전송한다. 맥 결정 계층부(93)는 목적지 맥 주소를 판단하여 패킷 전송의 방향 즉 송신 I/F부를 결정한다. 송신 I/F가 결정되면, 수신 패킷은 포워딩 펑션(94)으로 전달된다. 포워딩 펑션(94)은 수신 패킷을 그대로 송신 I/F부에 해당하는 MAC(96)이나 가상 맥(95)의 송신 링 버퍼(Transmit Ring Buffer)에 추가한다. 맥 결정 계층부(93)는 MAC커널 모드 드라이버에서 구현된다.
도 10은 본 발명의 실시 예에 따른 내부 PC(41)와 프린터(40)간의 패킷 전송 흐름을 도시한 것이다. 먼저 내부 PC(41)로부터 프린터(40)로의 패킷 전송 흐름을 설명하면, 내부 PC(41)의 프로세스(81)는 스풀러(82)에게 프린팅 데이터를 전송한다. 그러면 스풀러(82)는 프린팅 데이터를 포트 모니터(83)로 인가하며, 포트 모니터(83)는 프린팅 데이터를 하위 프로토콜(84)을 통해 프린터(40)로 전달한다. 이때 내부 PC(41)에 NetBEUI 또는 DLC 프로토콜을 설치한 경우, NetBEUI를 통해 프린팅 데이터를 프린터(40)에게 전달할 수 있으며, 또한 내부 PC(41)에 IPX/SPX, TCP/IP, Apple Talk 등과 같은 여러 가지 프로토콜을 설치한 경우, NETBIOS나 Socket 인터페이스(84)를 통해 프린팅 데이터를 프린터(40)에게 전달할 수 있다. 내부 PC(41)의 가상 맥(86)은 LLC 계층부(85)로부터 받은 패킷을 I/F부(87)를 통하여 멀티포트 네트워크 정합장치(42)의 PC I/F부(97)에 전송한다. PC I/F부(97)를 제어하는 가상 맥(95)은 수신한 패킷을 수신 링 버퍼에 저장하고 난 후, 맥 결정 계층부(93)로 패킷을 수신하였음을 알린다. 맥 결정 계층부(93)는 수신 링 버퍼에서 패킷을 읽어와서, 패킷의 목적지 MAC주소를 확인한다. 이때 패킷의 목적지 MAC 주소가 프린터(40)임을 판단한 후, 상위 프로토콜 계층인 LLC(92)에게 수신한 패킷을 전송한다.
다음으로 프린터(40)로부터 내부 PC(41)로의 패킷 전송 동작을 설명하면, 프린터(40)는 양방향 통신이 가능한 I/F부를 장착해야한다. 프린터(40)는 프린터의 I/F부를 통해 멀티포트 네트워크 정합장치(42)의 프린터 I/F부(99)로 패킷을 전송한다. 프린팅 데이터를 처리하는 프로세스(90)는 데이터를 하위 NetBEUI나 Socket, NETBIOS 계층(91)으로 전송한다. 그러면 맥 결정 계층부(93)는 목적지 MAC주소가 내부 PC MAC주소임을 판단하고 패킷을 PC I/F부(97)를 제어하는 가상 맥(95)으로 인가한다. 그러면 가상 맥(95)은 전송할 패킷을 송신 링 버퍼에 추가한 후, 송신 링 버퍼에 있는 패킷을 PC I/F부(97)를 통하여 내부 PC(41)로 전송하게 된다.
도 11는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치에서 내부 PC로부터 네트워크에 연결된 외부 PC로의 패킷 전송 흐름을 도시한 것이다. 상기 도 11을 참조하여 동작을 설명하면, 내부 PC(41)는 NetBEUI계층을 통하여 데이터를 전송하거나, Socket, NETBIOS 계층(84)을 통하여 데이터를 전송할 수 있다. 즉, 내부PC(41)에서 외부 PC로 데이터 패킷을 전송하는 경우, 멀티포트 네트워크 정합장치(42)의 맥 결정 계층부(93)는 수신한 패킷의 목적지 MAC주소가 프린터(40)의 MAC 주소도 아니고, 내부 PC(41)의 MAC주소도 아님을 판단하는 경우 상기 수신 패킷의 송신 I/F부를 LAN I/F부(98)로 결정하여 통신 네트워크(LAN)를 통해 해당 외부 PC로 전송하게 되는 것이다.
도 12는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치에서 프린터로부터 네트워크에 연결된 외부 PC로의 패킷 전송 흐름을 도시한 것이다. 상기 도 12를 참조하여 동작을 설명하면, 프린터(40)는 NetBEUI계층을 통하여 데이터를 전송하거나, Socket, NETBIOS 계층(91)을 통하여 데이터를 전송할 수 있다.
도 13은 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치를 통한 패킷 전송을 위한 내부 PC에서 MAC주소 설정을 위한 처리 흐름을 도시한 것이다. 이하 상기 도 7, 도 8, 도 9 및 도 13을 참조하여 본 발명의 실시 예를 상세히 설명한다.
먼저 내부 PC(41)에 설치된 프로토콜들이 데이터를 전송하고자 하는 경우 데이터는 MAC프레임의 사용자 데이터 부분에 저장된다. MAC 프레임의 헤더(Header)는 목적지 MAC 주소와 출발지 MAC 주소, 그리고 MAC 프레임의 종류를 나타내는 값이나 프레임의 길이를 나타내는 값으로 구성되어 있다. 따라서 네트워크로 데이터를 전송하기 위해선, 반드시 내부 PC(41)의 MAC 주소를 알아야 한다. 내부 PC(41)의 MAC주소 설정은 가상 맥(86) 커널 모드 드라이버 기동 시와 동작 시 주기적인 ARP 요청, 응답으로 이루어진다. 가상 맥(86)은 커널 모드 드라이버 기동시 드라이버 엔트리 루틴에서 ARP 요청이 이루어지고, 동작시 드라이버 타이머 루틴에서 ARP 요청이 이루어진다.
이제 상기 도 13의 흐름도에 따른 동작을 설명하면, 내부 PC 프로토콜 스택의 가상 맥 계층(86)은 상기 도 13의 (100)단계에서 상기 ARP요청 패킷의 목적지 MAC 주소와 출발지 MAC주소를 모두 '0'으로 설정하고, (102)단계에서 상기 패킷을 멀티포트 네트워크 정합장치의 PC I/F부(97)로 전송한다. 그러면 멀티포트 네트워크 정합장치(42) 프로토콜 스택내 가상 맥 계층(95)은 상기 ARP 요청 패킷의 목적지 MAC 주소와 출발지 MAC 주소가 모두 '0'이고, 목적지 IP 주소와 출발지 IP 주소가 동일한 것을 확인한다. 이어 가상 맥 계층(95)은 상기 ARP 요청 패킷의 두 MAC 주소를 모두 내부 PC(41)용 MAC 주소로 설정한 다음, ARP 응답 패킷으로 변형하여 내부 PC(41)의 I/F부(87)로 전송하게 된다.
그러면 내부 PC(41)의 가상 맥 계층(86)은 (104)단계에서 상기 멀티포트 네트워크 정합장치(42)로부터 ARP 요청 패킷에 대한 ARP 응답패킷이 수신되는지 여부를 검사하고, 상기 ARP 응답패킷이 수신되는 경우 (106)단계로 진행하여 상기 패킷의 두 MAC 주소가 서로 동일한지 여부를 검사한다. 그리고 상기 패킷의 두 MAC 주소가 서로 동일한 경우 가상 맥 계층(86)은 (108)단계로 진행하여 상기 MAC 주소가 적법한지 여부를 검사한다. 이때 상기 MAC 주소는 브로드 캐스트(Broadcast) 형태나 '0'이 아닌 경우 적법한 주소이다. 이때 만일 상기 MAC 주소가 적법한 주소로 판단되는 경우 가상 맥 계층(86)은 (110)단계로 진행하여 상기 ARP 응답 패킷의 주소를 내부 PC(41)의 MAC 주소로 설정하게 된다.
도 14는 본 발명의 실시 예에 따른 멀티포트 네트워크 정합장치에서의 패킷 전송 처리 흐름을 도시한 것이다. 이하 상기 도 7, 도 8, 도 9 및 도 14를 참조하여 본 발명의 실시 예를 상세히 설명한다.
먼저 멀티포트 네트워크 정합장치(42)의 가상 맥 계층부(95)는 내부 PC 인터페이스부(I/F)(97) 또는 랜 인터페이스부(I/F)(98)로부터 패킷 데이터가 수신되는 경우 상기 도 14의 (200)단계에서 이에 응답하여 (204)단계로 진행한다. 이어 상기 (204)단계에서 가상 맥 계층부(95)는 상기 수신된 패킷 데이터의 목적지 MAC 주소를 검사하게 되는데, 이때 만일 상기 수신된 패킷 데이터의 목적지 MAC 주소가 브로드캐스트 주소인 경우 가상 맥 계층부(95)는 (206)단계로 진행해서 상기 패킷 데이터를 수신 인터페이스부를 제외한 나머지 송신 인터페이스부들을 통해 전송한다.
즉, 상기 패킷 데이터가 랜 인터페이스부(98)를 통해 수신된 패킷 데이터인 경우에는 상기 패킷 데이터를 프린터 인터페이스부(99)와 내부 PC 인터페이스부(97)를 통해 프린터(40)와 내부 PC(41)로 각각 전송하며, 상기 패킷 데이터가 내부 PC 인터페이스부(97)를 통해 수신된 패킷 데이터인 경우에는 상기 패킷 데이터를 프린터 인터페이스부(99)와 랜 인터페이스부(98)를 통해 프린터(40) 및 네트워크상에 연결된 각 장치들로 전송하게 된다.
이와 달리 상기 수신된 패킷 데이터의 목적지 MAC 주소가 프린터(40)의 주소인 경우 가상 맥 계층부(95)는 (208)단계에서 이에 응답하여 (210)단계로 진행해서 상기 수신된 패킷 데이터를 수신 링 버퍼에 저장하고 맥 결정 계층부(93)로 패킷 데이터를 수신하였음을 알린다. 그러면 맥 결정 계층부(93)는 수신 링 버퍼에서 상기 저장된 패킷 데이터를 읽어와서, 상위 응용 프로토콜 계층인 LLC계층(92)로 상기 수신된 패킷을 전송한다.
이와 달리 상기 수신된 패킷 데이터의 목적지 MAC 주소가 내부 PC(41)의 주소인 경우 가상 맥 계층부(95)는 (212)단계에서 이에 응답하여 (214)단계로 진행해서 상기 패킷 데이터를 송신 링 버퍼에 추가한 후, 송신 링 버퍼에 있는 패킷 데이터를 내부 PC 인터페이스부(97)를 통하여 내부 PC(41)로 전송한다.
또한 이와 달리 상기 수신된 패킷 데이터의 목적지 MAC 주소가 외부 PC의 주소인 경우 가상 맥 계층부(95)는 상기 (212)단계에서 이에 응답하여 (216)단계로 진행해서 상기 패킷 데이터를 포워딩 펑션(94)으로 전송한다. 그러면 포워딩 펑션(94)은 상기 수신 패킷데이터를 그대로 랜 송신 인터페이스부(98)에 해당하는 맥 계층부(96)나 가상 맥 계층부(95)의 송신 링 버퍼에 추가하여 네트워크상의 해당 외부 PC로 전송하게 된다.
상술한 바와 같이 본 발명은 하나의 네트워크 정합장치에 두 개의 접속 포트를 설정하고 하나의 포트는 PC, 그리고 다른 하나의 포트는 프린터 접속용으로 설정하여 사용토록 함으로써 각종 네트워크 프로토콜 설치를 쉽게할 수 있으며, 또한 네트워크 설치 비용을 경감할 수 있게 되는 이점이 있다.

Claims (8)

  1. 통신 네트워크상에서 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치에 있어서,
    한 포트를 통해 상기 프린터에 접속되며, 상기 프린터와의 프린팅 데이터 송/수신 인터페이스를 수행하는 프린터 인터페이스부와,
    다른 한 포트를 통해 상기 프린터와 함께 연결되는 내부 PC에 접속되며, 상기 내부 PC와의 데이터 송/수신 인터페이스를 수행하는 PC 인터페이스부와,
    상기 멀티포트 네트워크 정합장치의 동작 프로그램과 패킷 데이터 송/수신을 위한 네트워크 프로토콜을 저장하는 메모리와,
    상기 프린터 및 내부 PC로부터 수신되는 데이터를 패킷 데이터화하여 통신 네트워크상으로 전송하며 상기 통신 네트워크상에서 수신되는 패킷 데이터를 해당 프린터 및 내부 PC로 전송하는 네트워크 접속부와,
    상기 멀티포트 네트워크 정합장치의 전반적인 동작을 제어하며, 상기 프린터와 내부 PC의 인터페이스부 및 상기 네트워크 접속부를 통해 송/수신되는 패킷데이터를 제어하는 MPU를 구비함을 특징으로 하는 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치.
  2. 제1항에 있어서, 상기 네트워크 접속부는,
    프린팅 데이터를 처리하기 위한 프로세스를 수행하는 응용 프로토콜 계층부와,
    상기 응용 프로토콜로부터 수신된 패킷 데이터의 목적지 맥(MAC) 주소를 판단하여 패킷 데이터의 전송 경로를 결정하는 맥 계층부와,
    상기 맥 계층부에 의해 결정된 해당 전송경로의 송신 인터페이스부를 통해 상기 패킷데이터를 전송하는 물리계층부를 포함함을 특징으로 하는 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치.
  3. 제2항에 있어서, 상기 맥 계층부는,
    상기 PC로부터 수신된 ARP 요구 패킷의 맥 주소 필드 영역에 상기 PC의 맥주소를 기록하여 응답 패킷으로 전송하는 가상 맥 계층부와,
    상기 가상 맥 계층부로부터 판단된 맥 주소를 판단하여 패킷데이터의 전송 경로를 결정하는 맥 결정 계층부로 이루어짐을 특징으로 하는 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치.
  4. 통신 네트워크상에서 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치에서 MAC 주소 설정 방법에 있어서,
    ARP 요청 패킷을 생성하여 상기 멀티포트 네트워크 정합장치로 전송하는 과정과,
    상기 멀티포트 네트워크 정합장치로부터 ARP 응답 패킷이 수신되는지 여부를 검사하는 과정과,
    상기 수신된 ARP 응답패킷에 포함된 출발지 맥 주소와 목적지 맥 주소가 동일한지 여부를 검사하는 과정과,
    상기 맥 주소가 동일한 경우 적법한 맥 주소인지 여부를 검사하는 과정과,
    상기 맥 주소가 적법한 주소로 판단되는 경우 상기 ARP 응답패킷에 포함된 맥 주소를 내부 맥 주소로 설정하는 과정으로 이루어짐을 특징으로 하는 멀티포트 네트워크 정합장치에서 맥 주소 설정방법.
  5. 통신 네트워크상에서 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크 정합장치에서 패킷 데이터 송/수신 방법에 있어서,
    패킷 데이터가 수신되는 경우 상기 패킷 데이터의 목적지 맥 주소를 검사하는 제1과정과,
    상기 목적지 맥 주소가 브로드캐스트 주소인 경우 상기 패킷 데이터를 수신 인터페이부를 제외한 나머지 송신 인터페이스부를 통해 통신 네크워크상에 연결된 장치들로 전송하는 제2과정과,
    상기 목적지 맥 주소가 프린터 주소인 경우 상기 패킷 데이터를 상위 프로토콜 계층부를 통해 프린터로 전송하는 제3과정과,
    상기 목적지 맥 주소가 내부 PC 주소인 경우 상기 패킷 데이터를 PC 인터페이스부를 통해 내부 PC로 전송하는 제4과정과,
    상기 목적지 맥 주소가 외부 PC의 주소인 경우 상기 패킷 데이터를 랜 인터페이스부를 통해 해당 외부 PC로 전송하는 제5과정으로 이루어짐을 특징으로 하는 멀티포트 네트워크 정합장치에서 패킷 데이터 송/수신방법.
  6. 제5항에 있어서, 상기 제3과정은,
    상기 수신된 패킷 데이터를 수신 링 버퍼에 저장하는 단계와,
    상기 패킷 데이터를 상위 응용 프로토콜 계층부로 전송하는 단계와,
    상기 패킷 데이터를 프린팅 데이터로 변환하여 프린터로 인가하는 단계로 이루어짐을 특징으로 하는 멀티포트 네트워크 정합장치에서 패킷 데이터 송/수신방법.
  7. 제5항에 있어서, 상기 제4과정은,
    상기 수신된 패킷 데이터를 송신 링 버퍼에 저장하는 단계와,
    상기 송신 링 버퍼에 저장된 패킷 데이터를 PC 인터페이스부를 통하여 내부 PC로 전송하는 단계로 이루어짐을 특징으로 하는 멀티포트 네트워크 정합장치에서 패킷 데이터 송/수신방법.
  8. 제5항에 있어서, 상기 제5과정은,
    상기 수신된 패킷 데이터를 상기 랜 인터페이스부의 송신 링 버퍼에 저장하는 단계와,
    상기 송신 링 버퍼에 저장된 패킷 데이터를 상기 랜 인터페이스부를 통해 네트워크상의 해당 외부 PC로 전송하는 단계로 이루어짐을 특징으로 하는 멀티포트 네트워크 정합장치에서 패킷 데이터 송/수신방법.
KR1020000009672A 2000-02-26 2000-02-26 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법 KR100312865B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000009672A KR100312865B1 (ko) 2000-02-26 2000-02-26 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000009672A KR100312865B1 (ko) 2000-02-26 2000-02-26 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법

Publications (2)

Publication Number Publication Date
KR20010084545A KR20010084545A (ko) 2001-09-06
KR100312865B1 true KR100312865B1 (ko) 2001-11-03

Family

ID=19650470

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000009672A KR100312865B1 (ko) 2000-02-26 2000-02-26 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법

Country Status (1)

Country Link
KR (1) KR100312865B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103051530B (zh) * 2012-12-26 2015-03-25 北京四方继保自动化股份有限公司 一种用于智能变电站报文的多网口发送优化方法
KR101460035B1 (ko) * 2012-12-31 2014-11-10 (주) 데키스트 포스 시스템의 프린터 무선 통신 시스템

Also Published As

Publication number Publication date
KR20010084545A (ko) 2001-09-06

Similar Documents

Publication Publication Date Title
US7587476B2 (en) Peripheral device with a centralized management server, and system, computer program product and method for managing peripheral devices connected to a network
US6412022B1 (en) Simultaneous print and scan logical channel network multifunction peripheral
US20050071507A1 (en) Method and apparatus for discovering a network address
US8832312B2 (en) Communication apparatus and communication control method
JP5063253B2 (ja) ネットワークシステムおよび通信方法
US20050141018A1 (en) Network printer control system and data reception control method thereof
US8259324B2 (en) Printer/storage integrate system, controller, control method, and control program for automatic installation of control software
US8972595B2 (en) Communication apparatus, application communication executing method, and computer program product, configured to select software communication or hardware communication, to execute application communication, based on reference information for application communication
US20050165956A1 (en) MAC controller of network printing device and method for enlarging bus bandwidth of network printing device
KR100312865B1 (ko) 네트워크 프린트 서버 기능을 제공하는 멀티포트 네트워크정합장치 및 패킷 데이터 송/수신 방법
JP4443482B2 (ja) インターネット印刷システム及びそれを実現するためのプログラム
JP3890243B2 (ja) 制御装置、ネットワーク通信方法及び制御プログラム
JP2009015716A (ja) 複数ipアドレスによる画像形成装置
JP2003248559A (ja) 情報処理装置、端末装置及び情報処理システム
JP2005346739A (ja) プリンタおよびプリンタジョブデータの転送方法
JP5626268B2 (ja) 情報処理端末
US7552216B2 (en) Method of sharing a printer
US20060106924A1 (en) Data-processing device, communication method, and computer program
JP5021533B2 (ja) 情報処理端末
JP4139541B2 (ja) プリンタおよびプリンタジョブデータの転送方法
US7228562B2 (en) Stream server apparatus, program, and NAS device
EP0980616B1 (en) Network printer auto-detection method and system
KR100457513B1 (ko) 네트웍 문서출력장치의 운용방법
JP4243831B2 (ja) プリンタおよびプリンタジョブデータの転送方法
US20220200958A1 (en) Network security configuration of image forming apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20060928

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee