TCP
주요특징
- 두 프로세스 또는 호스트 사이에 믿을 수 있는 연결 지향적인 전송 제공
- 전 이중 통신지원
- 데이터의 흐름 제어
- 수신자 상태에 따른 혼잡 제어
- 데이터 오류 발생 시 재전송을 통한 오류 제어
- 신뢰성 있는 데이터 전송을 보장
(주의: 실시간성은 보장 안함)
- TCP기반의 소켓 : 스트림 소켓
구조
- 최소 20바이트의 헤더 크기를 가짐
전송 포트(16비트)
- 운영체제내 송신 프로세스의 주소
- 응용프로그램을 식별하기 위해 운영체제에 의해 동적인 번호로 할당됨
수신포트(16비트)
- 수신 프로세스의 주소
- 수신 포트는 서버 구동시 할당됨
순서번호(32비트)
-TCP 세그먼트의 일련번호
- 일련번호는 세그먼트 별 1씩 증가
- 세그먼트의 누락 해결, 순서 교정 및 중복 세그먼트 방지용
ACK 번호(32비트)
- 다음 번에 수신될 것으로 예상되는 세그먼트 번호
HLEN(4비트)
- 헤더의 크기
- 이값을 통해, 세그먼트내 데이터(SDU)의 시작 위치를 알 수 있음
예약
- 미래를 위해 남겨놓은 영역
- 현재까지 사용되지 않고 있음
플래그 비트(6비트)
- 회선, 데이터의 관리와 제어 기능 등을 수행하는 영역
- URG 플래그
- 긴급 포인터임을 알림 - - 순서에 상관없이 먼저 송신됨
- ACK 플래그
- ACK 번호 영역의 값이 유효
- 접속 요청에 사용되는 SYN 메시지 이후에는 항상 1로 설정됨 - PSH 플래그
- 버퍼의 내용을 채우지 않고 바로 전송을 수행 - RST 플래그
- TCP 연결을 해제하기 위해 사용
- 전송 중에서 강제 접속 해제에 사용 - SYN 플래그
- 연결 설정에 사용 - FIN 플래그
- 전송할 남은 데이터가 없음을 알림 = 연결 종료
윈도우 크기(16비트)
- 흐름 제어를 위해 사용하는 16비트 영역
- 송신지에 수신지의 버퍼 여유 크기를 지속적으로 통보
체크섬(16비트)
- TCP 세그먼트 전체에 대한 오류 검출
긴급 포인터(16비트)
- URG 플래그가 설정된 경우 긴급 포인터 영역
- 응급 데이터의 위치
옵션(32*n 비트)
- 다양한 확장 기능과 관련된 영역
- 옵션에 따라 TCP 헤더의 크기가 변함
- 타임스탬프, 쵣해 세그먼트 크기 등의 기능이 포함
UDP
주요특징
- 두 종단 간에 연결을 설정하지 않고 데이터를 교환
- 비신뢰적인 데이터 전송
- 오버헤드의 크기가 작음(TCP 보다 빠름)
인터네드워킹 하드웨어
리피터
- 스테이션간 거리를 확장할 때, 신호를 증폭시켜주는 역할 수행
브리지
- 서로 다른 프로토콜을 사용한 데이터링크 계층 또는 물리 계층을 연결하여 데이터 or 신호를 변환하는 장비
라우터
- 송/수신 간 중간 서브넷을 거쳐 최적의 경로를 선택하는 기능을 담당
- 패킷을 전달하는 역할을 수행
게이트웨이
- 서로 다른 프로토콜이나 서로 다른 네트워크를 결합하는 장비 = 멀티 프로토콜 라우터
공간 다이버시티
- 수신측에 두개 이상의 안테나를 설치하면, 설치된 안타나에서 동시에 다중경로 페이딩이 발생하지 않는 점을 이용해 페이딩을 방지하는 다이버시티 기술
시스템 기본
정의
- 시스템 = 체계
- 공통점인 목적을 가지고 있는 구성 요소들을 상호 결합
- 유기적인 집합체 : 구성체들이 서로 밀접하게 관련을 가지고 있어서 떼어 낼 수 없음
특성
- 목적성 : 구성요소의 기능은 서로 다르나, 하나의 공통된 목적을 가짐
- 자동성 : 조건에 따라 가장 적절한 처리로 대응
- 제어성 : 이상에 대한 사전 감지 및 수정
- 종합성 : 여러 구성 요소들의 집합 -> 종합적으로 동작
기본 요소
- 입력: 처리 방법, 제어 조건, 처리할 데이터를 투입
- 출력: 처리된 결과를 출력
- 처리: 입력된 자료를 처리 조건에 따라 변환 및 가공
- 제어: 기본요소들이 각 과정을 올바르게 행하는지 감독
- 피드백: 처리된 결과가 만족되기 위한 재입력
시스템 분석가
개념
- 전반적 시스템과 요구 사항을 파악하고 해결책을 마련하는 사람
- 목적과 현 시스템의 문제점을 알고 해결책을 제시할 수 있는 사람
- 업부 내용 또는 시스템능력 보유
- 컴퓨터 기술과 관리 기법을 앎
- 시간 관리를 잘 하는 사람
- 컴퓨터 H/W 와 S/W에 대한 전반적인 지식의 소유자
- 업계의 동향 및 관계 법규 등을 잘 파악
- 창조력, 응용력, 현장 분석 경험이 풍부
- 사용자와 프로그래머, 경영진 간의 의사소통을 중재
! 어느 한 것에 중심적이면 안 됨
시스템 개발 생명 주기
절차(SDLC)
- 시스템 개발 과정에서 공통적으로 반복되는 단계
- 순서: 시스템 조사-> 시스템 분석-> 시스템 설계-> 시스템 구현-> 테스트-> 시스템 운용-> 유지보수