생성자 파라미터로 서버명과 리슨 포트, 처리할 주소 목록을 입력받습니다(➊). 처리할 주소 목록은 이후에 다시 설명하겠습니다. 서버 정보를 저장하고(➋) 서버를 만듭니다(➌). 클라이언트의 상태에 따라 접속(➍), 에러(➎), 접속 종료(➏) 이벤트를 처리합니다.
아직까지 클라이언트 정보를 활용할 일이 없으므로 화면에 출력만 하도록 합니다. 클라이언트에서 데이터가 수신되면 클라이언트 클래스에서 한 것처럼 패킷을 처리합니다(➐). 서버 객체를 생성하는 과정에서 포트 충돌 등으로 에러가 발생할 수 있습니다.
서버 객체에 대한 에러를 처리하고(➑) 생성자 파라미터로 전달받은 포트 정보로 리슨합니다(➒). 기본적인 서버 기능이 완성되었습니다. 이제 Distributor 접속 기능을 추가합니다.