등록특허 10-0613318 도시된 예에서, 서버 컴퓨터(104)는 저장 장치(106)와 함께 네트워크(102)에 연결된다. 또한, 클라이언트(108, 110, 112) 도 네트워크(102)에 연결된다. 이 클라이언트(108, 110, 112)는, 예를 들어 개인용 컴퓨터 또는 네트워크 컴퓨터일 수 있 다. 도시된 예에서, 서버 컴퓨터(104)는 부트 파일, 운영 시스템 이미지 및 어플리케이션과 같은 데이터를 클라이언트(108- 112)에 제공한다. 클라이언트(108, 110, 112)는 서버 컴퓨터(104)로의 클라이언트이다. 네트워크 데이터 처리 시스템 (100)은 추가적인 서버 컴퓨터, 클라이언트 및 도시되지 않은 다른 장치를 포함할 수 있다. 도시된 예에서, 네트워크 데이 터 처리 시스템(100)은 서로 통신하는 데에 Transmission Control Protocol/Internet Protocol(TCP/IP) 프로토콜을 사 용하는 네트워크 및 게이트웨이의 전세계적 집합을 표시하는 네트워크(102)를 구비하는 인터넷이다. 인터넷의 중심에는, 데이터 및 메시지를 라우팅하는 수많은 상업용, 공공용, 교육용 및 그 외의 컴퓨터 시스템들로 이루어지는 주 노드 또는 호 스트 컴퓨터간의 고속 데이터 통신 라인의 백본(backbone)이 있다. 물론, 네트워크 데이터 처리 시스템(100)은, 예를 들어 인트라넷, 근거리 통신망(LAN) 또는 원거리 통신망(WAN)과 같은 수많은 상이한 유형의 네트워크들로서 구현될 수도 있 다. 도 1은 예일 뿐이며, 본 발명의 구성을 제한하는 것으로 이해되어서는 안된다. 도 2에서, 도 1의 서버 컴퓨터(104)와 같은 서버 컴퓨터로서 구현될 수 있는 데이터 처리 시스템의 블록도가 본 발명의 바 람직한 실시예에 따라 도시된다. 데이터 처리 시스템(200)은 시스템 버스(206)에 연결된 복수의 프로세서(202, 204)를 포 함하는 대칭 멀티프로세서(symmetric multiprocessor; SMP) 시스템일 수 있다. 선택적으로, 단일 프로세서 시스템이 사 용될 수도 있다. 또한 메모리 제어기/캐시(208)가 시스템 버스(206)에 연결되어 로컬 메모리(209)로의 인터페이스를 제공 할 수 있다. I/O 버스 브리지(210)가 시스템 버스(206)에 연결되어 I/O 버스(212)로의 인터페이스를 제공할 수 있다. 메모 리 제어기/캐시(208) 및 I/O 버스 브리지(210)는 도시된 바와 같이 결합될 수 있다. I/O 버스(212)에 연결된 PCI(peripheral component interconnect) 버스 브리지(214)는 PCI 로컬 버스(216)로의 인터페 이스를 제공한다. 많은 수의 모뎀이 PCI 로컬 버스(216)에 연결될 수 있다. 전형적인 PCI 버스 구현은 네 개의 PCI 확장 슬 롯 또는 애드-인 커넥터를 지원할 것이다. 도 1의 클라이언트(108-112)로의 통신 링크가, 애드-인 보드를 통하여 PCI 로 컬 버스(216)에 연결된 모뎀(218) 및 네트워크 어댑터(220)를 통하여 제공될 수 있다. 추가적인 PCI 버스 브리지(222, 224)는 추가적인 모뎀 및 네트워크 어댑터가 지원될 수 있는 추가적인 PCI 로컬 버스 (226, 228)에 대한 인터페이스를 제공한다. 이런 방식으로, 데이터 처리 시스템(200)은 다수의 네트워크 컴퓨터로의 연결 을 가능하게 한다. 메모리-맵 그래픽 어댑터(memory-mapped graphic adapter; 230)와 하드디스크(232)도 도시된 바와 같이 I/O 버스(212)에 직접 또는 간접적으로 연결될 수 있다. 당업자는 도 2에 도시된 하드웨어의 변경이 가능하다는 점을 이해할 수 있을 것이다. 예를 들어, 광 디스크 드라이브와 그 런 종류의 다른 주변 장치가 도시된 하드웨어에 추가되거나 또는 이를 대신하여 사용될 수도 있다. 도시된 예는 본 발명의 구성을 제한하도록 의도된 것이 아니다. 도 2에 도시된 데이터 처리 시스템은, 예를 들어 Armonk, New York에 위치한 International Business Machines Corporation의 제품으로서 Advanced Interactive Executive(AIX) 운영 시스템 또는 LINUX 운영 시스템을 실행하는 IBM 서버 계열 시스템일 수 있다. 본 발명은 외래 포트 분배에 기초하여 서버 부하를 분담하는 방법, 장치 및 컴퓨터 명령을 제공한다. 특히, 본 발명의 메커 니즘은, 하나의 소켓(socket)이 임의의 외래 포트 또는 모든 외래 포트가 아닌, 하나의 외래 포트 세트에 연관되도록 (bound) 한다. 소켓은 TCP/IP 스택을 사용하는 네트워크에서 데이터를 적절한 어플리케이션으로 보내는(direct) 데에 사 용되는 메커니즘이다. 이러한 스택은 송신된 바이트의 총량이 올바르게 수신되는 것을 보장하는 운송 기능을 제공한다. 이 러한 스택은 주소에 기초하여 메시지를 라우팅하는 데에도 사용된다. IP 주소 및 포트 번호는 소켓을 구성한다. 본 예에서, 소켓은, 서버 프로세스라고도 불리우는 서버와 연관된다. 본 명세서에서, "서버"라는 용어가 단독으로 사용되었을 때, 이는 실제의 컴퓨터 또는 기계가 아닌 프로세스를 가리킨다. 본 방식에서, 연결을 처리할 때 서로 다른 외래 포트에 주의하도록 (listen for) 하기 위하여 다수의 서버가 사용될 수 있다. 본 예에서, 연결은 로컬 IP(LIP) 주소, 외래 IP(FIP) 주소, 로컬 포 트(LP) 및 외래 포트(FP)를 사용하여 식별된다. 일반적으로 서버가 사용하는 소켓은, 로컬 포트 번호가 일치하고 IP 주소 가 그 서버에 속하는 한, 임의의 외래 IP 주소 및 임의의 외래 포트로부터의 연결을 수용한다. 본 발명에 따르면, 연결이 외래 포트에 기초하여 서버에 분배되도록 하기 위하여 다수의 서버가 사용된다. "외래 포트"는 TCP/IP 요구 패킷을 발생시킨 원격 기계 상의 프로세스(본 발명에서는 클라이언트 프로세스)를 식별하는 데에 사용되는 번호이다. 이 번호는 TCP/IP 프로토콜 스택의 전송 계층에서 사용된다. 외래 포트는 로컬 프로세스(본 발명에서는 서버 프 - 4 -