Main Content

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

TCP/IP 서버 소켓을 사용하여 통신

서버 소켓 정보

tcpserver 함수를 사용하면 서버 소켓을 지원할 수 있습니다. 이것은 하나의 원격 연결을 지원합니다. 이 연결을 사용하면 클라이언트와 MATLAB® 간 또는 두 개의 MATLAB 인스턴스 간 통신이 가능합니다.

예를 들어, 파형과 같은 데이터를 하나의 MATLAB 인스턴스로 수집한 다음 이를 다른 MATLAB 인스턴스로 전송할 수 있습니다.

참고

클라이언트나 서버 측에서 서버 소켓을 사용하려면 해당 라이선스 옵션 및 활성화 유형과 관련된 라이선스 계약에 따라야 합니다. 궁금한 점이 있으면 라이선스 관리자나 법률 부서에 문의하십시오.

이는 개인 네트워크의 방화벽 뒤에서 사용하도록 설계되었습니다.

MATLAB의 두 인스턴스 간 통신

다음 예제는 동일한 컴퓨터에서 두 개의 MATLAB 세션을 연결하는 방법을 보여주며, 각 세션에 대한 예제 코드를 보여줍니다. 두 대의 다른 컴퓨터를 사용하려면 세션 2의 코드에서 "localhost"를 서버의 IP 주소로 바꾸십시오. IP 주소로 0.0.0.0을 사용하면 서버는 연결을 시도하는 첫 번째 컴퓨터를 허용합니다. 허용되는 연결을 제한하려면 세션 1의 코드에서 "0.0.0.0"을 클라이언트 주소로 바꾸십시오.

세션 1: MATLAB 서버

포트 30000에서 모든 머신의 연결을 허용합니다.

server = tcpserver("0.0.0.0",30000)
server = 

  TCPServer with properties:

        ServerAddress: "0.0.0.0"
           ServerPort: 30000
            Connected: 0
        ClientAddress: ""
           ClientPort: []
    NumBytesAvailable: 0

  Show all properties, functions

세션 2: MATLAB 클라이언트

이 코드는 MATLAB의 두 번째 인스턴스에서 실행됩니다.

서버에 연결하는 클라이언트 인터페이스를 만듭니다.

client = tcpclient("localhost",30000)
client = 

  tcpclient with properties:

              Address: 'localhost'
                 Port: 30000
    NumBytesAvailable: 0

  Show all properties, functions

파형을 만들고 시각화합니다.

data = sin(1:64);
plot(data);

파형을 클라이언트에 씁니다. 클라이언트가 서버에 연결되어 있으므로 이 데이터를 서버 세션에서 사용할 수 있습니다.

write(client,data,"double")

세션 1: MATLAB 서버

파형을 읽고 이를 시각적으로 그려 확인합니다.

data = read(server,server.NumBytesAvailable,"double");
plot(data);

참고 항목

|

관련 항목