TCP 소켓을 기반으로 상세 통신

소켓 통신이 TCP에 기초하여 전송 계층 통신 프로토콜, 통신은 전형적으로 채팅 애플리케이션에서, 애플리케이션과 애플리케이션 사이에있다.

연결을 설정

소켓을 사용하여 소켓 소켓 클라이언트와 서버를 사용하는 연결 요구를 만듭니다.

리눅스 메모리는 약간의 차이로 생성 된 소켓, 소켓을 만들 수 있습니다.

공용 클래스 EchoServer { 
         개인 INT 포트; 
         소켓 소켓; 
         공개 EchoServer (INT) 포트 { 
             this.port = 포트;  

        }   
       
         개인 무효 실행 ()는 IOException가 {던졌습니다 
            
             ServerSocket의 ServerSocket를 = 새로운 ServerSocket의 (7890)를; 
             동안 (사실) { 
                소켓 = serverSocket.accept (); 
                새로운 Thread (() -> { 
                    쓰기 (소켓); 
                }). (시작); 

             } 
            
             

        } 

        개인 무효 쓰기 (소켓 소켓) { 
             의 InputStream에서 새의 InputStream = (소켓);  
             ) (= 신규의 OutputStream을 OutputStream에;
             INT N; 
             바이트 [] B는 새로운 바이트 [1024] =; 
             반면 ((N = in.read (b))> 0) { 
                   out.write (b, 0, b.length)를; 
             } 
        } 

}                                         

  

공용 클래스 EchoClient { 
     개인 소켓 소켓; 
    
     개인 무효 쓰기 (소켓) { 
          에서 = 새의 InputStream (소켓)의 InputStream; 
          ) (= 신규의 OutputStream을 OutputStream에; 
          INT N; 
          바이트 [] B는 새로운 바이트 [1024] =; 
          반면 ((N = in.read (b))> 0) { 
             System.out.write (b, 0, b.length)를; 
         } 
     } 


     공공 정적 무효 메인 (문자열 []를 인수) { 
           소켓 소켓 = 새로운 소켓 ( "로컬 호스트", 7890); 
           
           (소켓) 쓰기;           
     } 
    
}

  

 

소켓은 소켓이 방법들을 호출하고 연결에 소켓을 듣고, ServerSocket의 전화, 유용성 모니터의 한 종류입니다.

또 다른 사용은 슬리브 단어를 연결하는 연결 방법, 역할 및 클라이언트 통신 서비스를 호출 소켓을 연결하는 것입니다.

 

완전한 TCP 통신은 서버와 클라이언트에 세 개의 소켓의 총을 만들 수 있습니다.

모니터링 서버 모니터링 클라이언트 소켓 연결에 소켓이 성공하고, 수신 후 연결을 생성하는 연결 의 소켓을.

커넥터 클라이언트의 소켓 연결을 시작하는 요청합니다.

 

 

추천

출처www.cnblogs.com/gzhich2019/p/11899128.html