'2010/04'에 해당되는 글 13건
- 2010/04/23 [HTML] HTML5 게임
- 2010/04/22 [HTML] HTML5 Video 사용한 3D
- 2010/04/19 [HTML] HTML5 다양한 예제
- 2010/04/14 [HOONS 닷넷 정기 23회] 엣지있는 웹 애플리케이션 만들기 with AJAX
- 2010/04/14 인터넷 보안
- 2010/04/13 정보보안
- 2010/04/13 보안 일반론 및 모델
- 2010/04/12 TCP/IP(Transmission Control Protocol / Internet Protocol)
- 2010/04/06 OSI 참조모델(Reference model)
- 2010/04/06 통신의 목적과 프로토콜
[HTML] HTML5 Video 사용한 3D
[HTML] HTML5 다양한 예제
[HOONS 닷넷 정기 23회] 엣지있는 웹 애플리케이션 만들기 with AJAX
| ||||||||||||
| - 일시 : 2010년 04월 15일(목) 19시 00분 - 장소 : 포스코센터 5층 (한국마이크로소프트) - 참가비 : 삼천원+α (수익금 전액은 후원처 요셉의원에 기부됩니다.) - 세미나 신청: http://www.hoons.kr/Seminar/Join.aspx | ||||||||||||
| 세미나 Agenda | ||||||||||||
| ||||||||||||
| 발표 내용 소개 | ||||||||||||
| ||||||||||||
| 진행자 소개 | ||||||||||||
| ||||||||||||
| 세미나 장소 | ||||||||||||
한국 마이크로소프트 - 포스코 센터 5층 | ||||||||||||
| 경품안내 | ||||||||||||
| ||||||||||||
(세미나 신청은 훈스닷넷에서 하시면 됩니다.!! 위 링크 참고.)
ㅁ 인터넷 보안기법
인터넷 보안기법은 크게 3가지로 나눌수 있는데, 이는 신분(시원) 확인에 대한 문제, Privacy 보호, 접근제어(Access Control)로 나눌수 있다.
- 신분(신원) 확인에 대한 문제
. 권한(Authorization), 인증(Authentication), 무결성(Intefrity)
. User Authentication (계정, 패스워드) 문제
. IP Source Authentication
1 불완전한 인증 메커니즘(IP Spoofing 로 인해)
2 공개키 암호방식(Public Key Encryption System)
- Privacy 보호
. 암호화 방법(공개키 암호방식)
1 UNIX 로그인 시 패스워드 입력
2 데이터 보호
- 접근제어(Access Control)
. 방화벽 사용
ㅁ 방화벽
외부 네트워크와 내부 네트워크 사이에 위치하여 네트워크들 사이에서 공격을 차단하는 소프트웨어 및 하드웨어이다. 즉, 외부 네트워크부터 내부 네으워크의 자원을 보호하는 것이다.
- 방화벽의 일반 구조
. Router와 Backbone 스위치 사이에서 외부의 허가 받지 않은 접근으로부터 내부망 보호.
. 서비스 네트워크를 분리하여 일차방어선 구축
-à 침해 당해도 내부망 안전하게 보호 가능하다.(그림 참고)
|
※방화벽 적용 내용 [그림 – 2 방화벽 적용 내용1] Internet에서 1차적으로 Screening Router 검사하고, Internal network에 접근하려면 Bastion Host를 거쳐야 한다. (Screening Router, Bastion Host는 방화벽의 일종이라고 생각하면 된다.)
|
ㅁ 방화벽(Firewall) 시스템
방화벽은 침입차단 시스템이라고 생각하면 되겠다. 그럼 방화벽 설계 시 고려 사항에 대해 알아보자.
1. 외부에서 내부망으로 또는 내부에서 외부로의 모든 트래픽(traffic)이 반드시 경유할 수 있도록 디자인해야 한다.
2. 작업에 최적인 H/W와 S/W 사용한다.
. 네트워크 속도를 고려.
. 버퍼의 overflow 발생 가능성 최소화
3. 위험지역(Risk Zone)축소
. 인터넷에 연결된 내부 네트워크를 분리시켜 다른 내부 네트워크로의 피해를 최소화한다.
ㅁ 인터넷 다단계 보안모델
인너넷 상에서 내부 네트워크로 들어올 때 보안단계를 여러 개로 구축할 수 있다. 1단계부터 7단계까지 나눠질수 있는데, 이는 아래와 같다.
[그림 – 4 다단계 보안모델]
- 1단계 : External-Demark
. 모뎀, 회선선로 등에 대한 물리적 보안대책.
. 외부망 연결 통신 선로 / 하드웨어 보안
. 라우터의 라우팅 테이블 변조 및 조정, LAN케이블 도청
- 2단계 : Packet Filtering
. 내부와 외부망 사이의 패킷 필터링.
. IP 주소, TCP port 번호에 대한 접근제어(라우터)
- 3단계 : Gateway
. 내부와 외부망 사이에 유일한 경로를 제공.
. 통과하거나 접속하는 트래픽에 대한 검사(Auditing)
. 접속을 요구하는 사용자에 대한 인증.
. 방화벽(Firewall)
- 4단계 : Internal-Demark
. 내부 LAN들의 격리
. 하나의 네트워크가 침해를 당하였을 경우 이의 전파를 막을 수 있는 방안.
- 5단계 : LAN
. LAN상의 모든 호스트에서의 보안 대책.
. 계정, 패스워드, 파일 시스템 보안.
. 새 버전 패치, 구성 파일의 올바른 셋업, 보안 도구
- 6단계 : 사용자 / 관리자 , 7단계 : 보안방침
. 보안정책에 따른 시스템 관리 문제, 보안 사고 시 처리 방법 및 절차 정의
ㅁ 침입탐지시스템
시스템에 불법적으로 접속하여 시스템을 사용, 오용, 남용하는 것을 감지하고 대응하기 위한 시스템이다. 또한, 침입탐지시스템은 어떠한 정보를 가지고 침입을 탐지할 건지에 대한 기준에 따라서 크게 3가지로 나눌수 있다.
- 네트워크 기반의 침입탐지시스템.
. 네트워크 상의 패킷을 통한 침입여부 판단.
. 원격지 호스트의 취약점 분석을 기반으로 한 침입탐지.
- 단일 호스트 기반의 침입탐지시스템.
. 특정 시스템의 불법 사용에 대한 점검.
. 시스템 내의 로그 파일 및 접속 관련 파일 점검.
. 프로그램의 버그들을 이용한 침입 점검.
- 멀티 호스트 기반의 침입탐지시스템.
. 여러 호스트들로부터 생성된 감사 데이터를 통한 침입 여부 판단.
|
※ 용어 정리 - Wiretapping : - UNIX : . 1969년 Bell 연구소에서 개발한 운영체제. . 유닉스는 처음 등장한 이후 몇 차례의 변신을 했다. 그런 변신 중에는 캘리포니아 주립 버클리대학에서 개발한 UNIX 4.3 BSD(Berkeley Standard Distribution(버클리 표준 배포판))과 AT&T에서 개발한 UNIX System V Release 4.0이 있다. - IRC : 로토콜. IRC는 각각 사용자별로 하나씩 클라이언트 프로그램으로부터 연결을 받아들이는 서 버들로 구성된 하나의 네트워크로 구축되 있다. - Spoofing : 터가 사용하는 기법. 라우터는 그 세션이 아직 실행중인 것처럼 호스트가 믿게 하기 위해 위해 보낼 트래픽이 없으면 회선 스위치드 링크를 다운시키는, DDR과 같은 라우팅 환경에서 유용하다. (참초 항목: DDR) 위. 스푸핑은 필터나 액세스 리스트와 같은 네트워크 보안 메커니즘을 파괴하도록 고안된 것 이다. - Audit : . 사용정책 및 보안정책을 수립하고 이에 따라 정보시스템이 안전하게 운용되고 있는지 확 조사, 분석하는 행위. - Backbone : . 네트워크에서 다른 네트워크로부터 가장 자주 송수신 대상이 되는 트래픽 주 경로 역할을 하는 부분. |
ㅁ 정보보안의 필요성
인터넷이 발전하기 전에는 해커가 그 시스템에 직접가서 시스템을 파괴한다거나, 정보를 빼간다거나 했었다. 그러나 인터넷이 발달함에 따라 정보통신이라는 기술에 문제점이 발생함에 따라 해커들이 그 허점을 이용해서 시스템이 침투하고, 네트웍을 못쓰게하고 등등의 문제를 인터넷상에서 할수 있게 되었다. 그러면서 정보보안의 필요성이 부각이 되었다. 그러다면은 보안이 필요하게된 이유가 무엇인지, 어떤 항목 때문에 필요한지 아래 그림을 통해 보자!
[그림 – 1 보안이 필요하게된 이유]
- UNIX Source Code의 공개 :
UINX 및 TCP/IP 소스 코드의 개방과 인터넷에서는 이와 관련한 여러문서들을 무료로 배포함으로써 이를 악용한 보안사고가 발생.
- 인터넷과 전자상거래 환경의 개방성 :
인터넷에서는 상호 정보 교환을 대화형으로 빠르고 원활하게 제공하며, 전세계 어디서나 자유롭게 접근할 수 있는 개방형 환경을 갖고 있다.
- 해킹 수법의 소개 및 해킹 도구의 보편화 :
인터넷에서는 검열이라는 것이 사실상 불가능할 정도로 많은 BBS와 온라인 정보교환(IRC, E-mail, News)을 통해서 해킹 수법 및 해킹 도구에 대한정보 교환이 쉽다.
- 관리자의 인식 부족 :
관리 시스템에 대한 보안 취약성 점검 및 보안 정책의 수립
. 다양한 보안 위협으로부터 이를 막기 위한 보안 요구 사항을 규정.
. UNIX 서버 시스템
. 인터넷 대란(Window 2000 SQL Server)
[그림 – 2 해커들의 집중 공격 대상 국가 중 한국의 예(출처 : CERTCC-KR)]
ㅁ 시스템 보안 요구사항
1. 보안을 실시한다고 할 때 과연 어느 정도로 정보가 안전한가를 객관적으로 판단하기 위하여 여러단체에서 보안의 정보를 판별하는 기준을 설정.
2. TCSEC(Trusted Computer System Evaluation Criteria) – 북미표준
3. ITSEC(Information Technology Security Evaluation Criteria) – 유럽표준
4. CC(Common Criteria) 국제 표준
ㅁ 정보보안 구성
정보보안은 네가지로 분류할 수 있는데, 이는 아래와 같다.
- 네트워크 보안 :
방화벽, 침입 탑지 시스템, 가성 사설망, 통합 보안 관제 시스템 등으로 구성
- 시스템 보안 :
서버 보안과 PC 보안으로 구분
- 어플리케이션 보안 :
PKI 기반의 보안과 컨텐츠 보안
- E-Biz에서 보안 적용 :
전자입찰, 전자 계약, 전자 세금 계산서 등 e-Biz에서의 정보 보호 적용.
보안 일반론 및 모델
ㅁ 보안의 개념
컴퓨터 혹은 네트워크 환경에서 자원(하드웨어, 소프트웨어, 데이터)을 대상으로 고갈시키거나(Availability), 변형시키거나(Integrity), 탈취(Confidentiality)하는 행위로부터 보호하는 제반의 정책과 행위이다.
ㅁ 보안의 3요소
1. 가용성
- 정보시스템은 적절한 방법으로 작동되어야 하며, 정당한 방법으로 권한이 주어진 사용자에게 정보서비스를 거부하여서는 안된다.
- 정보를 필요로 할 때 언제든지 가용 될 수 있어야한다.
- 무결성과 상호 이율 배반적인 면 존재 -> 상호 절충 요구.
2. 비밀성
- 정보는 소유자가 원하는 대로 비밀이 유지되어야 한다.
- 물리적 수준의 접근 통제(열쇠나 잠근 장치)
- 운영체제 수준의 접근 통제(시스템,파일,password 등)
- 네트웨크 수준의 접근 통제(내부 네트워크 사용을 제한)
3. 무결성
- 비 인가된 자에 의한 정보의 변경, 삭제, 생성 등을 보호하여, 정보의 정확성과 완전성을 보장하여야 한다.
(물리적 통제, 접근 통제(Access Control), 변경된 정보에 대한 탐지)
ㅁ 보안의 위협 - 시스템 공격의 유형
- 중지(Interruption) : 가용성에 대한 공격
. 시스템의 정상적인 동작을 방해하는 행위이며, 하드웨어의 파괴, 시스템 파일 삭제, 주요 특정 파일 삭제 등의 공격을 말한다.
- 도청(Interception) : 비밀성에 대한 공격
. 인가되지 않은 사용자가 전산 자원에 불법 접근하는 해위이며, 파일의 불법적인 복사, 전산망에서의 감청, Wiretapping 등의 공격을 말한다.
- 변조(Modification) : 무결성에 대한 공격
. 전산망을 통해 접근하여 전산 자원의 일부분이나 중요한 부분을 불법으로 수정하는 행위이며, 하드웨어 자체를 변경, 시스템 소프트웨어의 구성을 변경하는 공격을 말한다.
- 위조(Fabrication) : 무결성에 대한 공격
. 인가되지 않은 사용자가 정상적인 사용자로 위장하거나, 불법 코드 등을 시스템에 삽입하는 행위의 공격을 말한다.
TCP/IP(Transmission Control Protocol / Internet Protocol)
ㅁ TCP/IP(Transmission Control Protocol / Internet Protocol)란?
- 네트워크와 네트워크를 연결하기 위한 포로토콜.
. 여러 개의 네트웍을 연결해서 데이터를 서로 주고 받기위해, 서로 상호연결하기위한 프로토콜이다.
- 컴퓨터 네트워크에서 사용되는 메시지 교환규칙 프로토콜.
- 다양한 형태의 물리적 네트워크에 연결된 컴퓨터를 통해 네트워크 상의 다른 컴퓨터와 통신을 하기 위한 절차를 정의.
ㅁ TCP/IP의 생성 과정.
- ARPANET(Advanced Research Project Agency Network) 미국방성 프로젝트 수행 목적으로 구축.
- NSFNET(the US National Science Foundation Network)
- Internet = ARPANET + NSFNET : 1980년대 중반
[그림 - 1 TCP/IP와 OSI -7 Layers(계층) 비교]
- 데이터 캡슐화(Data Encapsulation) – 송신 측 입장에서 데이터 생성과정.
순수 사용자의 데이터가 생성 이되면 각각의 계층에서는 각각의 헤더(Header)를 붙이게 된다. 헤더라는 것은 각 계층에서 해야 할 일들을 정의한 오버헤드(Overhead)라고 할 수 있는데, 각 계층을 지나면서 각 계층에서 해야 할 일을 헤더에 붙이는 작업을 데이터 캡슐화(Data Encapsulation)라고 한다.
- 역 다중화(Demultiplexing) – 수신 측 입장에서 데이터 생성과정.
. 이더넷 드라이버에서 수신이 되며, 해당 데이터를 어느 쪽(ARP, IP, RARP)을 보낼지 이더넷 헤더의 프레임타입(type)을 확인해서 결정한다.
. IP에서는 TCP, UDP로 보낼지는 결정해야 하는데, 이때 사용되는 프로토콜의 헤더 값을 확인해서 결정한다.
. 응용계층에서는 각각의 포토번호를 확인해서 데이터를 보낸다.
[그림 - 4 TCP/IP 데이터 요청/응답 흐름]
ㅁ TCP/IP 프로토콜
각 계층별로 하는 일에 대해서 좀더 자세히 알아 보겠다.
- 데이터 링크 계층 프로토콜 :
. 패킷을 전달하는 물리적 인터페이스와 관련된 하드웨어를 제어하는 기능을 수행한다.
(NIC, Hub, Connector, Cable 등)
. ARP(Address Resolution Protocol)
1 TCP/IP 상에서 데이터 전송을 위해서는 IP주소(32bit)와 MAC주소(48bit) 주소필요.
(송.수진 측 모두 필요)
2 물리적의 IP주소를 사용하여 목적지 MAC주소를 획득하는 프로토콜.
3 ARP request(Broadcast) / ARP response(Unicast).
|
ARP request : 목적지 IP주소를 써서 모든 컴퓨터에게 보낸다. 즉, 내가 목적지의 IP주소를 알고 있는데, 그 목적지의 MAC Address을 알고 있으면 응답을 달라 요청함. (boradcast) ARP response : 목적지의 컴퓨터가 요청한 컴퓨터에게 바로 직접적으로 응답을 해준다. (nicast) |
- 네트워크 계층 프로토콜 :
네트워크 상의 패킷 이동의 제어(패킷을 전달하고 경로를 선택)기능을 수행하는 프로토콜이다. (라우팅 기능 수행)
1 IP(Internet Protocol) : 사용자의 데이터를 패킷 형태로 전송하는 기능을 수행하는 비 연결형 프로토콜이다. 즉, 전송 요청을 라우터에 보내면, 라우터가 알아서 해당 목적지에 요청을 한다. (라우팅 기능)
[그림 – 6 라이팅 기능]
2 ICMP(Internet Control Message Protocol) : IP서비스를 이용하여 호스트들이 오류 상황에 대한 정보를 제공한다.
- 전송 계층 프로토콜 :
두 호스트 간에 종단 간 연결을 맺고 데이터를 전달할 수 있는 기능을 수행.
1 UDP(User Datagram Protocol) : 종단 간에 연결을 설정하지 않은 채 데이터를 전송하는 비접속형 전송 서비스를 제공하는 비신뢰성 프로토콜.
2 TCP(Transmisstion Control Protocol) : 종단 간에 연결을 설정한 후 데이터를 전송하는 신뢰성있고, 순서적인 데이터 전달 서비스를 제공하는 접속형 프로토콜.
신뢰성 서비스 : 신뢰성을 제공하기 위해 수신 데이터에 대한 확인응답, 흐름제어, 세그먼트화 등을 제공.
- 응용 계층 프로토콜 :
TCP/IP 프로토콜의 이용하는 서비스
1 Telnet : 사용권한을 가지고 있다는 전제 하(계정)에 다른 사람의 호스트 컴퓨터를 원격지에서 액세스 할 수 있는 프로토콜.
2 FTP(File Transfer Protocol) : 여러 시스템간에 파일을 전송하기 위한 프로토콜.
3 SMTP(Simple Mail Transfer Protocol) : 여러 사용자 간에 전자 메일을 주고 받기 위한 프로토콜.
4 HTTP(Hypertext Transfer Protocol) : Web상에서 파일(텍스트, 그래픽 이미지, 사운드, 비디오 그리고 기타 멀티미티어 파일)을 주고받는데 필요한 프로토콜.
ㅁ TCP 연결 설정.
TCP의 연결설정 방법은 3-way Handshaking방법을 사용한다.
[그림 – 7 TCP 연결설정 흐름]
위 그림과 같이 컴퓨터 A가 B에 연결을 시도하기 위해서 SYN라는 메시지를 보내게된다. 그러면서 코드 1000이라고 같이 붙어여 보내게 되는데, B컴퓨터에서는 A컴퓨터의 SYN(1000)메세지를 확인해서 B컴퓨터가 연결을 시도하려는거라는걸 알게된다. B 컴퓨터는 다시 A 컴퓨터에게 ACK라는 메시지와 함께 1001이라고 코드를 같이 보내게 된다.(응답 받은 코드에서 +1을 더해서 보냄) 그러면서 SYN(4000)이라고 보내게 되는데 B 컴퓨터 또한 A 컴퓨터에 연결을 시도하는 것이기 때문이다. A컴퓨터는 다시 B 컴퓨터에게 ACK(4001) 보내게되므로서 연결이 된다. 이렇게 3단계를 거쳐 연결을 되기 때문에 3-way Handshaking이라 한다.
ㅁ TCP 재전송 타이머
TCP는 타이머를 통해서 신뢰성 있는 데이터를 주고 받는다. 즉, A 컴퓨터에서 패킷을 보냄과 동시에 타이머가 시작되고, A 컴퓨터에선 B 컴퓨터가 응답을 보낼 시간을 대략적으로 계산해 그 시간까지 응답이 없으면 중단에 패킷이 분실된 줄 알고 타이머가 만료되고, 다시 이전에 보냈던 패킷을 재전송을 하게 된다.
[그림 – 8 TCP 재전송 관련]
OSI 참조모델(Reference model)
ㅁ 네트워크 구조의 호환성
-à 네트워크 구조간 호환성 요구의 대두
1. 컴퓨터 보급의 확산으로 인한 분산 기기들간의 상호연결 증대
2. 컴퓨터 제조업체나 판매 업자들마다 독자적인 네트워크를 형성.
. IBM : SNA(System Network Architecture)
. Digital Equipment Corp. : DNA(Digital Network Architecture)
|
위와 같은 요구의 대두로 네트워크가 대규모로 증가함에 따라서 지역단위나 국가단위의 통일된 네트워크 구성에 대한 요구가 높아져 이에 대한 표준화 요구가 대두 되었다. |
-à 개방형 시스템(Open System) :
최소한의 표준화된 소스가 공개됨.(반대 폐쇄형 시스템[Closed System]).
. 서로 다른 특징을 갖는 기종들과도 접속될 수 있도록 준비가 되어 있는 시스템이라 할 수있다.
. 이 기종 시스템 간의 연결을 위해서 시스템 상호간에 서로 이해할 수 있는 최소한의 규격에 대한 표준이 필요하다.
.
|
OSI 참조모델(Reference model)은 국제 표준 기구인 ISO에서 1983년 네트워크상에서 서로 다른 이 기종끼리도 호환성 있게 상호접속을 할 수 있도록, 정보교환을 위해 필요한 최소한의 망 구조를 제공하는 기본 참조 모델을 제안. |
ㅁ OSI 참조모델(Reference model)
통신망을 통한 상호접속에 필요한 제반 통신절차를 통신절차 가운데 기본적으로 비슷한 기능을 갖는 모듈을 동일 계층으로 분할하고, 가능하면 각 계층간의 독립성을 유지할 수 있도록 하여 크게 7개의 계층으로 나누어 정의하였다.
[그림 OSI 7계층]
-à제 1계층 물리계층 :
상위 계층에서 내려온 비트들이 상대방까지 보내질 수 있도록 근원지와 목적지간의 물리적 링크를 설정, 유지, 해지하기 위한 물리적, 전기적, 기능적 그리고 절차적인 특성을 제공.
1. 아날로그 회선 : RS-232C
2. 디지털회선 : x.21
-à제 2계층 데이터링크계층 :
물리적인 링크를 통하여 신뢰성 있는 정보를 전송하는 기능을 제공한다. 즉, 동기화, 오류 제어, 흐름 제어 등을 통하여 데이터 블록(프레임)을 전송한다.
1. 헤더부분 : 데이터 블록의 시작을 나타내는 표시와 목적지로의 주소 등을 포함.
2. 트레일러부분 : 데이터블럭 내에 발생한 전송에러를 검출하기 위한 에러검출코드.
-à제 3계층 네트워크계층 :
. 개방형 시스템 사이에서 네트워크의 연결을 유지하고 설정하며 해지하는 기능을 담당
1. 이용자들이 자신의 데이터가 어떤 경로를 통해 전달될 것인지 결정.
2. 얼마나 많은 물리적인 회선을 경유할 것인지, 즉, 사용자가 이에 관해 무관하게 네트워크 내에서의 데이터를 다른 노드로 넘겨주는 릴레이(Relay)기능.
3. 상위계층에서 넘겨진 데이터를 일정 크기의 패킷으로 분할 및 재조립.
. 네트워크 계층의 표준
1. 현재 ITU-T(CCITT) X.25의 패킷레벨 프로토콜이 널리 사용되고 있다.
-à제 4계층 전송계층 :
End-to-end에 신뢰성 있고, 투명한(transparent)데이터 전송을 제공한다. 즉, 네트워크 계층에서 제공하지 않는 데이터의 에러나 이중 처리 등에 대한 에러제어 기능을 비롯하여 흐름제어를 담당한다.
-à제 5계층 세션계층 :
응용 간의 통신에 대한 제어 구조를 제공한다. 즉, 특정한 한 쌍의 프로세스들 사이에서 세션이라 불리는 연결을 확립하고 유지.
1. 다른 쪽의 프로세스와 대화하기 위해 양단간의 연결을 설정.
2. 순차적인 방법으로 대화를 관장하여 대화의 흐름이 원활히 이루어지도록 동기에 대한 기능을 제공.
3. 전이중 혹은 반이중 전송과 같이 데이터 전송방향을 결정하는 등의 기능을 제공.
-à제 6계층 표현계층 :
. 이용자가 통신하거나 참조할 수 있도록 정보를 표현하는 기능을 담당.
. 대표적인 변환 서비스의 예는 데이터 압축, 암호화를 비롯하여, 터미널이나 파일들을 네트워크 표준으로 변형하는 것 등이다.
-à제 7계층 응용계층 :
. 최상위 층으로 응용 프로세스가 네트워크 환경에 접근하는 수단을 제공함으로써 응용 프로세스들이 상호간에 유용한 정보교환을 할 수 있는 창구 역할을 담당.
. 이 계층에서는 네트워크 관리기능을 비롯하여 범용 응용 서비스인 파일전송, 전자우편, 가상터미널 등의 기능이 포함된다.
통신의 목적과 프로토콜
ㅁ 통신의 목적
통신하는 상대방 사이에 정확하고, 효율적이며, 안전한 정보의 전송을 목적으로 한다.
-->데이터 전송의 흐름.
1. 에러 없이 정보를 수신하였으면 ACK를 보낸다.
2. 에러가 있었으면 NAK를 보낸다.
3. NAK를 받으면 이전에 보내 온 정보를 다시 보낸다.
4. 16회 이상 계속해서 에러가 발생하면 통신도 중단한다.
ㅁ 통신의 불완전성
통신하려는 상대방이 정보를 전송하기 위해 통신 채널을 통해 전송할 때 정상적인 정보를 훼방 놓는 여러가지 현상이 있다. 이러한 훼방 해위는 통칭하여 불완전성(impairment,전송에러)이라고 한다.
통신의 불완전성이 초래하는 결과로는 신호의 감쇄, 왜곡 등을 초래하며 이와 함께 통신 채널에 존재하는 잡음과 더불어 에러의 원인이 된다.
ㅁ 에러제어와 동기
-à 에러제어 : 통신 프로토콜에서는 이러한 에러가 발생하였을 때 어떻게 에러의 발생 사실을 알아내고 손실된 정보를 회복할 것인가에 대한 엄밀한 절차, 즉 에러제어가 사전에 약속되어 있어야 한다. 이렇게 되어 있어야만이 통신의 불완전성을 극복할수 있는 방법이다.
-à 동기(synchronization) : 정보를 정확하게 전송하기 위해서는 동기(synchronization)의 개념 필요!
ㅁ 흐름제어
정보의 양을 조절하는 흐름제어(flow control)방법도 사전에 미리 약속되어야 한다. 즉, 흐름 제어는 정보의 송신 측에서 너무 빠르게 정보를 보내는 바람에 수신 측에서 이를 미처 소화하지 못함으로써 정보의 손실을 가져오는 사태를 막기 위한 방법을 말한다.
ㅁ 프로토콜의 기본 개념
서로 다른 시스템에 있는 두 실체(entity)간의 신뢰성 있고, 효율적인 정보를 주고 받기 위해서 정보의 송.수신측 또는 네트워크 내에서 사전에 약속된 규약 또는 규범이다. (정보를 정확하게, 효율적으로, 안정하게 주고받기 위해 사전에 약속됨)
[그림1]
ㅁ 프로토콜의 구성요소
프로토콜들의 효과적인 정리를 위해서 프로토콜 계층화의 사고 방식이 도입되었다. 계층화의 개념은 구조화 프로그래밍(Structured programming)의 개념과 유사하다.
[그림2 – TCP/IP 계층구조]
프로토콜의 각 계층은 구조화 프로그래밍의 모듈(Module)과 같다. 또한, 프로토콜의 각 계층은 수직적으로 상하 관계를 갖는 것은 모듈들을 수직적으로 배치하여 모듈 사이의 인터페이스(interface)가 최소화되도록 하는 개념과 흡사하다.
계층화된 네트웍 프로토콜을 총칭하여 네트웍 구조(Network Architecture)라고 부른다.
“나누어 정복하라(Divide and conquer)” : 모듈화를 통해 각계층에 종속이 되지 안게.
ㅁ 프로토콜의 종류
. TCP/IP(Transmission Control Protocol/Internet Protocol)
. OSI(Open System Interconnection) 참조모델(Reference Model)
. SNA(System Network Architecture)
-IBM사의 네트워크 아키텍처 계층 개념
-7계층으로 구성되어 있음.
. X.25 : 패킷 교환 공중망(Packet Switched Public Data Network)을 통한 데이터 전송을 정의하며 Wan에서 가장 널리 채택.



