이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
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);