2013년 6월 16일 일요일

TCP 헤더구조는 이렇게 생겼다

지금 인터넷은 TCP/IP 프로토콜을 사용합니다.
TCP 헤더구조가 어떻게 되어 있는지는 책을 보거나 여기저기 보면 많이 나옵니다.
다음에 기회가 되면 제가 워드로 잘 정리해둔 자료를 가지고 다시 한번 올려볼 생각입니다.




우리가 접속하는 인터넷에서 사용되는 패킷구조중의 하나를 나타내는 TCP 헤더구조가 위의 그림과 같다.
물론 초보자들은 좀 어렵게 느낄 수도 있지만 전문가가 되려면 반드시 헤더구조를 분석하는 버릇을 길러야 된다.
물론 이렇게 말하는 나자신도 아직은 전문가는 아니다. 그러나 기술을 공부하는 사람이라면 알아할 것이 위 헤더구조중에서
특히 포트번호와 Code Bits 부분은 꼭 알아둘 필요가 있다.
포트번호는 왜 필요할까?
우리는 하나의 컴퓨터에서 수없이 많은 Application을 실행한다. 웹 브라우저를 띄워놓고 똑같은 사이트 또는 각기다른 사이트를 접속하는데 하나같이 제대로 웹 브라우저에 보여준다. 왜 그럴까???
그것은 바로 포트번호로 구분해 줄 수 있기 때문이다.
목적지가 서버일 경우 찾아게 될 때도 어떤 서버는 웹서버이고 어떤 서버는 FTP서버이고 또다른 게임서버인지를 어떻게 알아서 찾아간다고 보는가??
목적지 포트번호가 미리 예약되어 사용되기 때문에 가능하다.

[TIP] TCP/IP 에 널리 사용되는 포트번호값들

    ●TCP/IP에서 일반적으로 널리 사용되는 포트 번호를 알아 보자
    TCP
    포트번호
    응용프로그램 계층 서비스
    TCP
    포트번호
    응용프로그램 계층 서비스
    0
    예약
    102
    ISO-TSAP
    1
    TCP 포트 서비스 멀티플렉서
    107
    원격 Telnet 서비스
    2
    관리 유틸리티
    108
    SNA 게이트웨이 접속 서버(snagas)
    3
    압축 프로세스
    110
    우체국 프로토콜 - 버전 3(POP3)
    5
    원격 직무 항목
    111
    Sun 원격 프로시저 호출(sunrpc)
    7
    반향(echo)
    119
    네트워크 뉴스 전송 프로토콜(NNTP)
    9
    삭제
    123
    네트워크 시간 프로토콜(NTP)
    11
    활성 사용자(systat)
    134
    INGRES-NET 서비스
    13
    137
    NETBIOS 이름 지정 서비스
    (netbios-ns)
    17
    오늘의 인용문(QUOTD)
    138
    NETBIOS 데이터그램 서비스
    (netbios-dgm)
    20
    FTP 데이터 포트
    139
    NETBIOS 세션 서비스(netbios-ssn)
    21
    FTP 제어 포트
    142
    Britton-Lee IDM
    23
    Telnet
    191
    Prospero
    25
    SMTP
    194
    인터넷 중계 대화 프로토콜(irc)
    35
    개인 프린터 서버
    201
    AppleTalk 경로 설정 유지보수(at-rtmp)
    37
    시간
    202
    AppleTalk 이름 바인딩(at-nbp)
    39
    자원 위치 프로토콜
    213
    IPX
    42
    호스트 이름 서버(nameserver)
    215
    Insigniax(Soft PC)
    43
    Who Is(별명)
    217
    dBASE UNIX
    49
    로그인 호스트 프로토콜(로그인)
    372
    UNIX Listserv
    52
    XNS 시간 프로
    519
    unixtime
    53
    도메인 이름 서버(domain)
    525
    시간 서버(timed)
    54
    XNS 정보 센터
    533
    비상 방송용(netwall)
    66
    Oracle SQL*NET(sql*net)
    556
    RFS 서버(remoterfs)
    67
    부트스트랩 프로토콜 서버(bootps)
    565
    Who Am I(whoami)
    68
    부트스트랩 프로토콜 클라이언트(bootpc)
    749
    Kerberos Administration
    (kerberos-adm)
    70
    Gopher 프로토콜
    767
    전화(phonebook)
    79
    Finger 프로토콜
    1025
    네트워크 블랙잭(blackjack)
    80
    world Wide Web HTTP
    1352
    Lotus Notes(lotusnote)
    88
    Kerberos
    7000-7009
    Andrew 파일 시스템(AFS)에서 사용
    94
    Trivoli Object Dispatcher(objcall)
    17007
    ISODE 디렉토리 사용자 대행자
    (isode-dua)
    95
    SUPDUP



댓글 없음:

댓글 쓰기