모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 오유인페이지
    개인차단 상태
    camellia님의
    개인페이지입니다
    가입 : 13-08-10
    방문 : 514회
    닉네임변경 이력
    회원차단
    회원차단해제
    게시물ID : programmer_5094
    작성자 : camellia
    추천 : 0
    조회수 : 6601
    IP : 210.110.***.210
    댓글 : 9개
    등록시간 : 2014/08/22 02:21:58
    http://todayhumor.com/?programmer_5094 모바일
    C# 소켓프로그래밍과 통신 프로토콜 관련해서 질문 드립니다.
    옵션
    • 본인삭제금지
    안녕하세요! C# 소켓프로그래밍 관련해서 정말 도움이 절실합니다ㅠㅠ  <span style="font-size:9pt;line-height:1.5;">눈앞이 캄캄해서 생각난 곳이 여기입니다ㅠㅠ</span> <div><br><div><div>현재, 일단 소켓프로그래밍을 한번도 해본적이 없어서  서버-클라이언트로 이루어진 채팅 프로그램 예제 공부중이구요. </div> <div>제가 만들어야 할 프로그램은 서버-클라이언트가 있습니다. 클라이언트에서 패킷메시지를 보내주면 서버에서 응답을 해서 다시 클라이언트로 전송해줘야 합니다. 이때 통신 프로토콜 설계서를 보고  패킷메시지를 날려야 합니다. </div> <div><br></div> <div>그냥 아예 여기에 대해서 무지합니다. 공부하고자 하니, 어디 도움 받을 곳이 여기 밖에 없습니다ㅠㅠㅠㅠ</div> <div><span style="font-size:9pt;line-height:1.5;">통신 프로토콜 설계서에 있는 걸 몇개 가져오면 아래와 같습니다. </span></div> <div><br></div> <div><b>통신 패킷</b></div> <div> <table style="border-collapse:collapse;border-left-style:solid;border-left-color:#000000;border-left-width:.28pt;border-bottom-style:solid;border-bottom-color:#000000;border-bottom-width:.28pt;border-right-style:solid;border-right-color:#000000;border-right-width:.28pt;"><tbody><tr><td style="width:76.3pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">구분</span></p></td> <td style="width:67.82pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">STX</span></p></td> <td style="width:76.2pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">데이터길이</span></p></td> <td style="width:64.88pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">보내는 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">ID</span></p></td> <td style="width:62.05pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">받는 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">ID</span></p></td> <td style="width:93.18pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">데이터종류</span></p></td> <td style="width:118.65pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;">데이터</span></p></td> <td style="width:90.35pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">Check Sum</span></p></td> <td style="width:70.54pt;height:21.36pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">ETX</span></p></td></tr><tr><td rowspan="2" style="width:76.3pt;height:178.13pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;">크기<span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">(bytes)</span></p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">(10 + n)</span></p></td> <td style="width:67.82pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">1</span></p></td> <td style="width:76.2pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">1</span></p></td> <td style="width:64.88pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">2</span></p></td> <td style="width:62.05pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">2</span></p></td> <td style="width:93.18pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">1</span></p></td> <td style="width:118.65pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">n</span></p></td> <td style="width:90.35pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">2</span></p></td> <td style="width:70.54pt;height:21.31pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">1</span></p></td></tr><tr><td style="width:67.82pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x02</span></p></td> <td style="width:76.2pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">n+5</span></p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">{</span>보내는 <span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">ID</span></p> <p style="text-align:center;">받는 <span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">ID</span></p> <p style="text-align:center;">데이터종류</p> <p style="text-align:center;">데이터<span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">(n)}</span></p></td> <td style="width:64.88pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">ID</span></p></td> <td style="width:62.05pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">ID</span></p></td> <td style="width:93.18pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">Command (0x10)</span></p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">Data(0x11)</span></p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">Error (0x12)</span></p></td> <td style="width:118.65pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;">세부명령<span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">|</span>추가데이터</p></td> <td style="width:90.35pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;">데이터길이</p> <p style="text-align:center;">부터 데이터까지 </p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">2bytes </span>나눈 후의 합</p></td> <td style="width:70.54pt;height:156.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x03</span></p></td></tr></tbody></table></div> <div>데이터 형식은 0x11 되어있습니다. 그다음 페이지에는 Command 정의(0x10)도 있구요. <span style="font-size:9pt;line-height:1.5;">클라이언트->서버 이렇게 하여 표가 하나 있습니다.  </span></div> <div><span style="font-size:9pt;line-height:1.5;">표에서 하나 언급을 하면요. </span></div> <div><br></div> <div> <table style="border-collapse:collapse;border-left-style:solid;border-left-color:#000000;border-left-width:.28pt;border-bottom-style:solid;border-bottom-color:#000000;border-bottom-width:.28pt;border-right-style:solid;border-right-color:#000000;border-right-width:.28pt;"><tbody><tr><td rowspan="2" style="width:137.45pt;height:25.64pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">명령어 종류</span></p></td> <td colspan="2" style="width:223.96pt;height:12.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">데이터 영역</span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;background:#ffffff;">(6~)</span></p></td> <td rowspan="2" style="width:273.29pt;height:25.64pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">설명</span></p></td> <td rowspan="2" style="width:106.32pt;height:25.64pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">비고</span></p></td></tr><tr><td style="width:92.17pt;height:12.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">세부 명령어코드</span></p></td> <td style="width:131.79pt;height:12.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);background:#d6d6d6;" valign="middle"> <p style="text-align:center;"><span style="font-weight:bold;background:#ffffff;">추가 데이터</span></p></td></tr><tr><td rowspan="2" style="width:137.45pt;height:47.3pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p><span style="font-weight:bold;">시간동기화 송신</span></p> <p><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">SET_TIME</span></p></td> <td style="width:92.17pt;height:28.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x01</span></p></td> <td style="width:131.79pt;height:28.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p style="text-align:center;"><span>시간 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">| </span><span>시간차</span></p> <p style="text-align:center;"><span lang="en-us" style="font-family:'굴림체';"> </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">(7+1=8 bytes)</span></p></td> <td style="width:273.29pt;height:28.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p><span>메인 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">GUI</span><span>에서 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">PCU</span><span>와의 시간 동기화용으로 사용함</span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">.</span></p> <p><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">* </span><span>시간차 데이터가 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0</span><span>인 경우는 </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">RES_TIME </span><span>응답을 받음</span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">.</span></p></td> <td style="width:106.32pt;height:28.82pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p><span>수신 메시지</span></p> <p><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">RES_TIME</span></p></td></tr><tr><td colspan="4" style="width:603.57pt;height:18.48pt;padding:1.41pt 5.1pt;border:.28pt solid rgb(0,0,0);" valign="middle"> <p><span>패킷</span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">) 0x02 0x0D 0xFFFE 0xFFFF </span><u><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x10</span></u><span lang="en-us" style="font-family:'굴림체';"> </span><u><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;font-weight:bold;">0x01</span></u><u><span lang="en-us" style="font-family:'굴림체';"> </span></u><u><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x0102030405060708</span></u><span lang="en-us" style="font-family:'굴림체';"> </span><span lang="en-us" style="font-family:'굴림체';letter-spacing:0pt;">0x???? 0x03</span></p></td></tr></tbody></table></div> <div>이런식으로 되어있습니다.</div></div> <div><br></div> <div><b>질문1) STX 등은 인터넷을 찾아서 의미는 아는데,  밑에 있는 숫자는 무엇인가요? 저 숫자 다 더하니깐 10나오고  n 때문에 그래서 10+n인거 같은데 무얼 뜻하는지 설명 해주셨으면 좋겠습니다.</b></div> <div><b><br></b></div> <div><b>질문2) 패킷 ) 0x02  ~~ 이부분이 STX 데이터길이 이런 순으로 되어있는거 같은데 맞나요?? 이걸 어디에 써먹어야 하나요??</b></div></div> <div><b><br></b></div> <div><b>질문3) 이와 관련한 소켓프로그래밍 예시 코딩 있으면 가르쳐 주셨으면 좋겠습니다.ㅠㅠ 도대체 어떻게 코딩을 해야하나요??</b></div> <div><br></div> <div>이렇게 질문3개로 나눠서 올렸긴 한데,  지금 제 상태를 C로 표현하자면  헤더 선언하고, int main(void) { return 0;} 딱 이것만 쓰고 더이상 어찌 해야할지 모르는 상태입니다....<span style="font-size:9pt;line-height:1.5;">통신 프로토콜 설계서 라는걸 지금 처음 봅니다...주변에서 물어보면 책이나 인터넷 찾아보라고만 합니다....너무 막막합니다ㅠㅠ </span><span style="font-size:9pt;line-height:1.5;">도움좀 주셨음 좋겠습니다 ㅠㅠ</span></div>

    이 게시물을 추천한 분들의 목록입니다.
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    C# 소켓프로그래밍과 통신 프로토콜 관련해서 질문 드립니다. [9] camellia 14/08/22 02:21 28 0
    14
    치아교정기로 인해 설소대가 살짝 끊어졌어요ㅠㅠ [2] camellia 13/11/06 19:24 28 0
    13
    이거 상한건지 여기다 여쭤도 될까요?? [9] camellia 13/11/03 14:27 178 0
    12
    교정칫솔 너란 녀석...ㅠㅠ camellia 13/10/06 18:20 26 0
    11
    항히스타민제 복용 중 술 마셔도 될까요? [2] camellia 13/09/27 10:53 70 0
    9
    동생이 벌레에 물렸다고 합니다. [1] camellia 13/09/14 15:30 46 0
    8
    약으로 인해 백혈구 수치가 낮아질 수 있나요? camellia 13/09/06 17:33 20 0
    7
    (사진혐오죄송)입술양끝이 빨갛습니다. camellia 13/09/02 01:11 37 0
    4
    교정하고 계시는분들 요리 추천 좀!!ㅠㅠ [7] camellia 13/08/21 00:52 21 0
    3
    항히스타민제 관련해서 질문드려요 camellia 13/08/16 03:26 17 0
    2
    교정관련해서요~ [1] camellia 13/08/14 01:26 16 0
    [1]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈