나초보씨의 실전 C# 네크워크 프로그래밍 2편

  • Post author:
  • Post category:
  • Post comments:2 Comments
  • Post last modified:February 8, 2020

이튿날, 직속상사인 나팀장씨가 나초보씨를 부릅니다. 나초보씨는 자신이 개발해야 할 서버 프로그램의 명세서를 받았습니다.

이게 명세서란거군
(처음 그려본 그림입니다. 결코 대충 그린게 아닙니다. +_+)

클라이언트 프로그램의 프로토타입

예제 오류 리포트 전송 창

패킷 명세

SubmitReport (오류 보고 패킷)
필드 데이터 타입 설명 기타
MsgType int (32비트 정수) 패킷 종류 값: 100
MsgLength int 바디의 길이 단위: byte
MsgId int 패킷 일련번호  
ApplicationName char[128] 어플리케이션의 이름  
ApplicationVersion char[16] 어플리케이션의 버전  
ExceptionMsgLength int 오류 메시지의 길이 단위: byte
ExceptionMsg char[] 오류 메시지  
MsgLength int ‘하고 싶은 말’의 길이 단위: byte
Msg char[] ‘하고 싶은 말’  
EMail char[128] 이메일 주소  
Name char[64] 사용자 이름  

SubmitReportAck (오류 보고 패킷에 대한 응답)
필드 데이터 타입 설명 기타
MsgType int (32비트 정수) 패킷 종류 값: 101
MsgLength int 바디의 길이 단위: byte
MsgId int 패킷 일련번호 SubmitReport에서 받은 MsgId
Result int 결과 E_OK (0)
E_ETC (1)
E_WRONG_EMAIL (2)

참고

  • 문자열 인코딩: EUC-KR

  • Null 종료 문자열을 사용한다.

  • 정수값은 Network-byte order로 전송된다.

메시지 흐름

메시지 흐름도

업무분담

  • 버그수렴서버 – 나초보

  • 데이터베이스 모듈 – 나연구

  • BigCompany Word – 나선임

  • 닦달하기 – 나소장, 나팀장

Author Details
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
0 0 votes
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
sukwoo
18 years ago

“닦달하기 – 나소장, 나팀장”

너무나 찡한 감동을 주는군요…
아~ 눈물난다.

(어제 북한산 갔다와서 몸도 여기저기 쑤시는데) 땡땡이 치고 집에 가고 싶다.
뭐 집에 간다고 반겨주는 사람도 없지만서두ㅠㅠ

최재훈
18 years ago

복학하면 기숙사 생활을 다시 해야 하는데 남일 같지 않네요.