반응형
계산기 서버, 클라이언트의 예시
사실 계산기를 만드는 데에는 크게 힘들 것은 없다.
하지만
이를 네트워크 상에서 동작하도록 만드는 일은 생각만큼 쉽지 않을 것이다.
특히 C언어의 배열 및 포인터의 활용 능력이 조금 부족한 경우에는 표현하고자 하는 바를
충분히 표현하지 못해서 고생할 수 있다.
그래서 이번 예제를 통해서 에코 서버, 에코 클라이언트에서 설명하지 못한 부분을 배워보자.
하지만 이를 직접 만들어 보면 자기 자신이 큰 자신감을 가지게 될 것이다.
그럼 이제 계산기 서버와 클라이언트를 구현하기 전에
아래와 같이 애플리케이션 프로토콜을 정의한다.
실제 프로그램의 구현을 위해서는 보다 자세하고 정확한 프로토콜이 정의되어야 한다.
-
-
이 정도 분량의 프로토콜만 정의하면, 프로그램의 반은 구현한 것이나 다름없다.
그만큼 네트워크 프로그래밍에서는 어플리케이션 프로토콜의 정의가 중요하다.
프로토콜만 잘 정의하면, 구현은 큰 문제 되지 않는다.
그리고 앞에서도 한번 말했었지만, close 함수가 호출되면 상대방에게 EOF가 전달된다는 사실도 기억하고 활용하자.
그럼 먼저 계산기 클라이언트의 코드를 봐보자.
참고로 이번 예제에서는 서버보다 클라이언트에서 공부할 내용이 더 많다.
반응형
'시작하지 말았어야 했던 것 > (Unix, Linux) C Socket' 카테고리의 다른 글
(리눅스) 계산기 서버 (0) | 2021.02.03 |
---|---|
(리눅스) 계산기 클라이언트 (0) | 2021.02.03 |
(리눅스) echo 클라이언트 이외의 경우, 어플리케이션 프로토콜의 정의 (0) | 2021.02.03 |
(리눅스) echo 클라이언트 수정된 코드 (0) | 2021.02.03 |
(리눅스) echo 클라이언트 완벽하게 구현하기 (0) | 2021.02.03 |