728x90

전송 계층 개요

- TCP/IP 프로토콜의  전송 계층은 End-to-end

* 데이터 링크 계층 : 노드와 노드간 링크에서 데이터 전송 방법 정의(MAC 프레임, 이더넷 프레임)

* 네트워크 계층 : 경로 설정. 오류제어, 흐름제어. (라우터)

* 전송 계층 : 송신 호스트와 수신 호스트간 전송 방법 규정 (TCP, UDP)

 

인터넷 프로토콜 계층 구조

 

-

전송 계층

- 송신 호스트와 수신 호스트간 전송 방법 규정 TCP, UDP

- 흐름 제어 : 송신 호스트와 호스트 간 전송속도 차이 제어. 슬라이딩 윈도우

- 오류 제어 : 데이터 분실, 오류시 재전송. selective/Stop and wait/ go back n ARQ

- 연결 지향 서비스 : TCP

- 비연결 지향 서비스  : UDP

 

 

소켓

- IP + 전송 계층 포트 번호

 ex) 192.168.10.1:80

소켓 개념

 

 

 

TCP 프로토콜

- 송신 호스트 프로세스와 수신 호스트 프로세스간 연결형 서비스 제공하는 전공 계층 프로토콜

- 흐름 제어, 오류 제어로 신뢰성 있는 데이터 전송

- 데이터 단위는 세그먼트

TCP 세그먼트 구조
TCP 프로토콜 모니터

 

 

TCP 포트 번호

- 포트 길이 : 16비트.

- 잘알려진 포트 : 1 ~1023

 ex) 21(FTP), 22(SSH), 23(TELNET), 25(SMTP), 80(HTTP)

 

 

UDP 프로토콜

- 송신 호스트 프로세스와 수신 호스트 프로세스의 비연결형 서비스 제공하는 비연결형 전송 계층 프로토콜

- 비연결형 : 호 설정 없이 브로드캐스트 방식 전송

- 비신뢰성 : 오류제어, 흐름제어 x

- 실시간 전송

- 데이터 단위 : 데이터그램

UDP 프로토콜 헤더 구조

 

UDP 프로토콜 모니터

 

 

 

 

300x250

'컴퓨터과학 > 통신, 보안' 카테고리의 다른 글

해킹 - 1. 해킹 개요  (0) 2020.07.28
Iot 보안  (0) 2020.07.25
네트워크 - 8 라우팅 프로토콜 2  (0) 2020.05.18
네트워크 - 7 라우팅 프로토콜  (0) 2020.05.18
네트워크 - 6 인터넷 보조 프로토콜  (0) 2020.05.18
728x90

OSPF Open Shortest Path First

- 1980년대 IETF에서 개발한 라우팅 프로토콜

- RIP 한계를 극복한 대규모 네트워크에서 사용 가능

- 목적지 까지 bandwidth 링크 상태 알고리즘 사용

 

OSPF 프로토콜 모니터링

 

 

IGRP interior gateway routing protocol

- cisco에서 개발한 프로토콜

- 대역폭, 지연, 신뢰도, 부하, mtu 등 네트워크 정보를 이용하여 거리 벡터 계산

- 멀티 패스 라우팅 지원

 

 

 

 

 

 

300x250
728x90

라우팅 프로토콜 RIP

- 홉수가 최저인 최적의 경로 설정

 

 

 

라우팅

- 네트워크에서 목적지까지 경로 설정

- 경로 설정 요소 : 대역폭, 지연시간, 신뢰성, 거치는 장비수, MTU(최대 데이터 단위)

 

 

경로 설정 요소

- 홉 카운트 hop count : 홉(거쳐가는 라우터 개수) 수가 작은게 좋음

- 링크 상태 link state : 대역폭이 넓을수록 좋다.

- mtu (최대 전달 용량) : mtu가 클수록 좋음

 

ip 라우팅 프로토콜의 경로 결정 요소

- RIP : Hop count 홉 카운트

- OSPF : bandwidth 링크 상태

- IGRP : bandwidth, delay, mtu, reliability

 

 

라우팅 과정

- 라우터에서 IP 패킷이 경로 설정을 하는 과정

- IP 패킷이 라우터에 도착하면 목적지 주소를 찾기위해 라우팅 테이블 검색

- 도착한 IP 패킷 목적지. 동일 네트워크- 직접 전송, 다른 네트워크 - 다음 네트워크로 전달

- 라우팅 테이블에 없는 경우 -> 디폴트 라우터로 보냄

 

라우팅

- 정적 라우팅 : 네트워크 관리자가 명령어로 경로 설정

- 동적 라우팅 : 네트워크 상태에 따라 라우팅 테이블 생성되고, 라우팅 테이블따라 경로 설정

 

 

라우팅 프로토콜 종류

- IGP Interior Gateway Protocol : 네트워크 자율 시스템 내에서 동작. RIP, OSPF

- EGP Exterior Gateway Protocol : 네트워크 자율시스템 외부서 동작. BGP

 

 

RIP routing information protocol

- 경로 설정 방법 : 홉카운트

- 단일 경로 라우팅 프로토콜

- 거리 벡터(방향과 크기) 라우팅 기반 알고리즘 사용

 

300x250
728x90

ICMP Internet Control Message Protocol

IGMP Internet Group Management Protocol

ARP Address Resolution Protocol

RAPP Reverse ARP

 

 

 

ICMP 인터넷 제어 메시지 프로토콜의 필요성

- IP는 비연결형으로 오류 보고/수정 기능이 없음 -> 신뢰성 x. 호스트와 관리자를 위한 매커니즘 부재

- 호스트는 라우터나 다른 호스트 동작 여부 확인 필요.

- 관리자는 다른 호스트나 라우터로부터 정보 획득 필요

-> ICMP

 

네트워크 계층에서 ICMP 위치

- ICMP는 네트워크 계층 프로토콜

- 직접 데이터 링크 계층으로 데이터 전달은 안함 -> 메시지는 데이터그램에 캡슐화됨

네트워크 계층에서 ICMP의 위치와 ICMP 캡슐화
ICMP 패킷 형식

 

 

IGMP internet group management protocol

- 인터넷 멀티캐스트 그룹 관리 프로토콜

* 유니캐스트 : 1:1, 멀티 캐스트: 특정 여러사람, 브로드 캐스트 : 불특정 여러사람에게 전달

- 그룹 가입, 감시, 응답, 탈퇴

 

 

ARP address resolution protocol(주소 해석 프로토콜)

- 수신측의 논리적 주소인 IP로 물리적 주소인 MAC 주소를 가져오는 프로토콜

 -> IP 주소로 LAN카드 맥주소 해석

 

              DNS          ARP

도메인 주소 -> IP 주소 -> MAC 주소

           

 

RARP 프로토콜

- MAC 주소로 IP주소를 찾는 프로토콜

- 유동 IP 환경(DHCP)에서 송신측에서 컴퓨터를 네트워크에 연결할떄 MAC을 보내서 IP를 받음

* 포트는 2^16까지 0~65535

 

 

300x250
728x90

주소

- 인터넷 모든 장비를 인식하는 고유 번호

- 네트워크는 주소로 목적지까지 경로 설정

- 주소로 데이터 출입 경로 통제(보안)

일반 우편 주소와 데이터 패킷 주소 비교
IP 주소 이해

 

 

IPv4

- 32비트 구성

 1. 2^32로 43억개

 2. 8비트씩 끊어 4개부분으로 나누고, 10진수 표현

 3. 네트워크 주소와 호스트 주소 부분 구분

- 전세계 유일한 주소

- 공인 IP주소와 사설 IP 주소로 구분

 

 

클래스 기반 주소 지정

- class a : 0으로 시작. 앞 7비트(8-맨앞 고정비트 1개) 네트워크, 뒷 24비트는 호스트 주소

- class b : 10으로 시작. 앞 14비트(16-맨앞 고정비트2개) 네트워크. 뒷 16비트 호스트

- class c : 110으로 시작. 앞 21비트(24-맨앞 고정비트3개) 네트워크. 뒷 8비트 네트워크

- class d : 1110으로 시작. 멀티캐스트 주소

 

 

 

32비트가 모두 0인 주소 -> 0.0.0.0/32

- 호스트가 자신의 ip 주소를 모르는경우 통신에 사용

- 목적지 주소를 제한된 브로드 캐스트 주소로 설정(DHCP)

 

32비트가 모드 1인 주소 -> 255.255.255.255(제한된 브로드캐스트)

- 다른 모든 호스트들에게 메시지 전송시 이 주소를 목적지로 설정

- 라우터 밖으로 전달안됨

 

네트워크 자체 주소 ~.~.~(네트워크).0(호스트)

- 호스트 부분이 0인 주소

 ex) 192.168.1.0

 

직접 브로드 캐스트 주소

- 호스트 부분이 모두 1인 주소 -> ~.~.~.255

- 라우터가 네트워크 모든 호스트에 패킷 보낼떄

 ex) 192.168.0.255

 

루프백 주소 loopback address

 - 127.0.0.1, 127.0.0.0/8

 - 자신 컴퓨터로 돌아오는 주소 -> 로컬 호스트 

 

 

서브넷팅

- 하나 등급 네트워크를 작은 논리적 네트워크로 분할하는 방식

- 서브네팅에서 호스트 식별자를 다시 서브넷 식별자와 호스트 식별자로 분할 

 

 

서브넷 마스크

- ip 주소로 서브넷 주소만을 식별하는 방법

ex ) 210.193.130.200/26 <- 네트워크 주소로 26비트 사용한다

1~255(8비트).1~255(8비트).1~255(8비트).1~192(맨 앞 2비트) => 총 26비트

위 주소의 서브넷 마스크 : 255.255.255.192

 

 

 

서브넷 마스크로 서브넷 식별자 구하기

- 호스트 식별자 중 서브넷 마스크와 겹치는 부분 => 서브넷 식별자

서브네팅

 

 

 

IPv4 패킷

- 제어 정보(헤더)와 데이터로 구성

 

IPv4 패킷 구조

 

IPv4 헤더 모니터링 화면

- IPv4

- 헤더길이 20바이트

- 서비스 필드

- 길이는 977바이트

- 플래그 0x02

- ttl : 48

- 프로토콜 tcp

- 송신지 주소 : 61.111.62.165

- 목적지 주소 : 118.33.55.45

 

IPv4 헤더 모니터링 정보

 

 

IPv4 기본 헤더 필드

- 버전 : IP 프로토콜 버전

- 헤더 길이: 옵션 필드를 포함한 헤더 총길이. 기본 헤더 20바이트. 확장 헤더의경우 40바이트

- 서비스 타입 : 우선권(3비트), TOS(4비트), 예약 (1비트)

-전체 길이 : 헤더와 데이터를 포함한 IP 패킷 전체 길이

- 식별자 : 상위 계층(TCP)의 동일한 데이터로부터 분할된 패킷은 수신측에서 재조립할수있도록 동일한 식별자 부여

- 플래그 : 첫번째비트(예약), 두번쨰비트(단편화 금지), 세번째비트(추가단편화 비트)

- TTL : 패킷이 경유할수 있는 최대 홉 수 의미. 패킷이 라우터 통과할때마다 TTL이 1씩 감소, 0이되면 폐기

- 프로토콜 : 1(ICMP), 6(TCP), 17(UDP)

 

300x250
728x90

개방형 시스템 open system

- 서로 다른 시스템간 통신 기능 제공

- osi 모델은 개방형 시스템으로 상호 연동이 가능한 네트워크 구조를 이해하고 설계하기 위한 모델 구조

 

프로토콜 계층 구조 예시

- iso의 osi 7계층

- ietf의 tcp/ip 계층

- atm 프로토콜 계층

- isdn 프로토콜 계층

 

 

osi 7계층

- 서로 다른 시스템간 통신을 하기 위한 프로토콜

1. 물리 계층

2. 데이터 링크 계층

3. 네트워크 계층

4. 전송 계층

5. 세션 계층

6. 표현 계층

7. 응용 계층

 

 

 

1. 물리 계층 physical layer

 - 네트워크에서 노드 간 물리적 연결을 위한 프로토콜 규정

 - 물리적 회선 종류 : 유선 - 꼬임선 케이블, 동축 케이블, 광케이블 , 무선 - 주파석 대역

   ex) a라는 시스템은 광케이블 사용. b 시스템은 동축 케이블 사용 연결 불가.

 - 회선 커넥터 모양, 회선 개수 등 물리적 기능

 - 어느선이 전원선, 접지, 신호선인지 규정

 - 비트 스트림을 어떻게 표현할것인지 규정

 - 장비 : 리피터, 허브

=> 눈에 보이는 선

비트 스트림 형태

 

2. 데이터 링크 계층 data link layer

 - 링크 : 노드와 노드를 연결한 논리적 회선

 - 논리적 회선 : 물리적 회선이 아니라 시간 분할/주파수 분할 등으로 구분할 수 있는 회선

 - 링크 사이에서 데이터를 어떻게 잘 전달하는지를 규정

   => 잘 전달한다 = 신뢰성있게 전달-> 링크 상 프레임 구조, 오류 제어, 흐름 제어, 접근제어 등을 규정

 * 접근제어 : 여러 장치가 연결되면 우선순위 제어

=> 논리적 회선(링크)

 ex) 트럭 비유시 :  프레임은 트럭, 데이터는 짐

 

HDLC 프레임 구조

3. 네트워크 계층 network layer

 - 수신측 주소로 경로 설정

  - 네트워크 계층에서의 데이터 구조 : 패킷

 ex) 편지 비유 : 패킷 = 편지, 패킷헤더 = 편지봉투, 프레임 = 편지지

 - 송수신 측의 논리적 주소(ip) 설정

 - 경로 지정을 통한 트레픽 제어

목적지로 경로 설정

 

 

4. 전송계층 transport layer

 - end-to-end 간 전송 제어 방법 규정(어떻게 전송할지)

 - 전송 제어 방법 : 연결형, 비연결형 

 - 연결형 : 콜을 설정, 데이터 전송, 콜을 끊음 (전화) -> 흐름 제어, 오류 제어

 - 비연결형 : 브로드케스트(TV)

- 전송 계층에서 데이터 구조 : 연결형 - 세그먼트 segment, 비연결형 - 데이터그램 datagram

 

 

5. 세션 계층 session

 - 송신단과 수신단 사이 세션 채널(대화 채널) 규정 <- 전송 계층에서 연결 확인

 - 멀티미디어 환경에서 오디오 채널, 비디오 채널, 텍스트 채널

 - 대화 전송 모드 : 전이중, 반이중, 단방향

 - 동기화 기능 : 데이터 스트림에 동기점 추가  

세션 계층

 

6. 표현 계층

 - 데이터 부호화/복호화

 - 데이터 암호화/ 복호화

 - 데이터 압축 방법

표현 계층 예시

7. 응용 계층

 - 어떤 응용서비스를 할 것인가

 - 사용자 인터페이스 제공

 

 

 

 

 

 

 

TCP//IP 프로토콜

- 1973년 미국서 개발

- 인터넷 망에서 데이터를 주고받기위한 인터넷 표준 프로토콜

- 4계층 구성 

 1. 네트워크 액세스 계층

 2. 네트워크 계층

 3. 전송 계층

 4. 응용 계층

 

OSI 7계층과 TCP/IP프로토콜 4계층 구조

 

 

1. 네트워크 액세스 계층

 - osi 7계층의 물리 계층과 데이터 링크 계층의 기능 의미

 - 통신 단위 : 프레임 

   -> ex) MAC 프레임, ethernet 프레임, iee 802.15.4 프레임, 와이파이 프레임, 지그비 프레임 등

 - 담당 장비 : 허브, 중계기, 스위치, 브리지

네트워크 액세스 계층

 

 

 

2. 네트워크 계층

 - ip 주소(ipv4, ipv6)로 경로 설정

 - 데이터 구조 : 패킷, 통신 단위 : 데이터 그램

 - 네트워크 계층 프로토콜

  IP internet protocol, ICMP internet control message protocol, ARP address resolution protocol, RARP reverse ARP

 - 네트워크 계층 지원 장비 : 라우터 

 

 

 

3. 전송 계층

 - end-to-end 간 전송 제어 방법 규정

 - 송신 단말 프로세스와 수신 단말 프로세스간 통신 방법 규정

 - 전송 계층 프로토콜 : TCP(연결형), UDP(비연결형)

 - 통신 단위 : TCP-> 세그먼트 , UDP-> 데이터그램

 

 

4. 응용 계층

 - 전송 계층을 이용하여 다양한 인터넷 응용서비스 제공

 - 통신 단위 : 메시지

 - TCP 지원 프로토콜 : HTTP, FTP, TELENET, SMTP 등

 - UDP 지원 프로토콜 : DNS, TFTP, SNMP 등

 

 

TCP/IP 프로토콜 계층 별 주소 지정

1. 응용 계층 - url, 메일 주소

2. 전송 계층 - 전송 포트

3. 네트워크 계층 - 논리적 주소(ip 주소)

4. 네트워크 액세스 계층 - 물리적 주소(mac 주소)

 

TCP/IP 계층 별 데이터 형테

1. 응용 계층 : 메시지

2. 전송 계층 : TCP -> 세그먼트, UDP -> 데이터 그램

3. 네트워크 계층 : 패킷(IP 패킷)

4. 네트워크 액세스 계층 : 프레임(MAC 프래임, 지그비 프레임, HDLC 프레임)

 

 

 

 

각 계층별 장비

1. 물리 계층 장비

- 중계기, 리피터 : 물리적 회선 연장, 신호 증폭

- 허브 : 멀티포트 중계기능

 

2. 데이터 링크 장비

- 브리지 : 네트워크 세그먼트간 연결

- 스위치 : PC와 스위치, 액세스 포인트를 연결

 

3. 네트워크 계층 장비

- 라우터 : 네트워크에서 경로 설정, 보안

- L3 스위치 : 라우터 기능

 

4. ~ 응용 계층까지

 게이트웨이 : 다른 프로토콜을 사용하는 망을 연결

 ex) 전화망-게이트웨이-인터넷망

 

 

 

300x250
728x90

네트워크

- 송수신자 연결하는 망

- 연결에 따른 분류 : 유선, 무선, 유무선 네트워크

- 구조에 따른 분류 : 스타, 버스, 트리, 링, 그물망 구조

- 범위에 따른 분류 : 개인단위, 기관단위, 도시단위, 국가단위

- 용도에 따른 분류 : 공중, 사설, 데이터벡업, 보안 네트워크

 

 

 

 

 

 

음성 통신 네트워크

1. 전화기 : 아날로그 전화기, 디지털 전화기

2. 전송/교환장비 : 전화 교환기, 디지털 전송장비

3. 전송장비

 - 다중화 장비(mutlplexer) : dso(64kbps) -> t1(1.544mbps), e1(2.048bps)

 - 고속 광 전송장비(sdh, dacs) : stm-1(155mbps) -> stm-4(622mbps) -> stm-16(2.5gbps)

 

 

이동 통신 네트워크

1. 이동 단말

2. 이동 통신 기지국

3. 이동 전화 교환장비

4. 이동 전화 전송장비

 

이동통신 네트워크

 

인터넷 네트워크

1. 단말 장치 - pc

2. 유/무선 중계기 - ap(공유기)

3. 교환 장비 - switch

4. 경로 설정 장비 - router

5. 게이트웨이 - 서로 다른 망(프로토콜) 연결(ex. 전화망-인터넷망)

6. 전송장비

7. 네트워크 케이블

 

 

유선 네트워크 구조 topology

1. 스타구조 star topology : 중앙제어장치가 교환, 관리 담당. 1:1 연결. 유지 용이. 중앙 장치 장애발생시 전체 장애발생

2. 버스 구조 bus topology

 - 이더넷(csma/cd방식)서 사용. 백본케이블에 모든장치 연결. 새로운 노드추가용이. 노드증가시 속도 저하

3. (역)트리 구조 tree topology

 - 스타와 버스구조 결합. 노드간 신호이동거리 증가. 건물내 층간 네트워크 구성 용이. 허브 연결끊어질시 하부단말장애

4. 링구조 ring topology 

5. 그물망 구조 mesh topology : 모든 노드 서로 연결. 장애 신뢰성 높음. 많은 비용

 

유선 네트워크 구조

 

 

 

 

 

 

무선 랜 네트워크 구조

- 유선에다가 ap 연결해서 사용하는 방법 -> 유선랜 하부 인프라 구조

- ap없이 단말간 상호연결을 통한 통신 -> 애드훅 구조

1. 유선 랜 하부 인프라 구조

 - 유선 랜 스위치에 무선랜 중계기를 유선으로 접속

 - 무선 랜 중계기 AP와 무선 단말 구간을 무선 접속

유선랜 하부 인프라 구조

2. 애드훅 ad hoc 구조

 - 액세스포인트(랜 중계기) 없이 무선 단말간 상호 연결을 통한 통신

 

애드훅 구조

 

 

 

 

 

유무선 혼합 네트워크 구조

1. 캠퍼스 네트워크

 - 유무선 랜 결합 구조 : 유선랜 - 건물 내 교실/사무실, 무선랜 -복도, 계단 등

 

 

 

네트워크 구조

1. 인터넷 네트워크 기본 구조

 - PC -> 스위치 -> 라우터 -> 외부 네트워크

2. 유선 네트워크 구조

 - 스타 토폴로지, 버스 토폴로지, 트리 토폴로지, 매시 토폴로지

3. 무선 네트워크 구조

 - 유선 랜 하부 구조, 애드훅 구조

 

 

 

 

네트워크 서비스 대상에 따른 분류

1. 공중 네트워크

 - isp 네트워크

 ex) kt, lg, skt

2. 사설 네트워크

 - 기업이나 기관 lan, 인트라넷

 - 가상 사설 네트워크 vpn

 - 가상 lan

 

 

보안 범위에 따른 분류

1. 가상 사설 네트워크 vpn

- 공중망 통신자원으로 기업/기관 본사와 자사를 사설망으로 구성

2. 가상 lan(vlan)

 - 동일한 lan에서 보안 목적으로 lan 내부에 가상적으로 구성한 세부 내트워크

 

 

 

네트워크 개념

- 2개 이상의 노드와 노드간 논리적 회선(링크)로 연결하여 통신

- 노드 : 장비, 단말, 시스템

- 링크 : 노드와 노드간 논리적인 회선

 

 

네트워크 구성요소

- 리피터 : 통신 거리를 늘려주는 중계기

- 허브/공유기 : 회선 중계하고, 여러 단말을 접속하는 장비

- 브리지/스위치 : 단말 접속 교환 기능, 물리적 주소인 mac주소로 동작

- 라우터 : 네트워크 경로 제어

- 게이트웨이 : 이종 네트워크간 상호접속 하는 장비

- 광전속장비 : 광대역 데이터 전송 장비

- 무선 인터넷 중계기 ap : 무선 접속

 

 

 

네트워크 케이블

1. 꼬임선 twist pair cable

-일반적인 랜케이블

- 비차폐 꼬임선(utp : unshielded twist pair)

 cat-3 : 10mbps

 cat-5 : 100mbps

 cat-6 : 1gbps

- 차폐된 꼬임선(stp : shielded twist pair)

2. 동축 케이블 coaxial cable

 - 안테너선

 - 얇은 케이블 thin cable : 100 base 2 . 100mbps baseband 200m전송

 - 굵은 케이블 thick cable : 100 base 5. 100mbps baseband 500m 전송

 

 

광 케이블 fiber optic cable

- 빛으로 데이터 전송

 

 

프로토콜

- 데이터 전송을 위한 통신 규약으로 데이터를 주고받는 정보의 형식과 절차 규정

 

프로토콜 구성요소

- 구문 syntax : 데이터 구조, 형식, 표현순서

- 의미 semantics : 각 비트 영역별 의미

- 시기 timing : 언제, 어느속도로 전송

 

통신 프로토콜 계층구조

- 네트워크에서 프로토콜도 여러가지 각 기능에 대한 규칙이 필요

- ISO의 OSI 7계층 구조

- IETF의 TCP/IP 계층 구조

- ISDN 프로토콜 계층 구조

300x250
728x90

통신 communication

- 송수신자간 의사소통

 

 

 

 

 

 

네트워크 기본 용여

- 노드 : 네트워크 장비, 단말, 시스템

- 링크 : 노드와 노드간 논리적인 회선

- 라우팅 : 네트워크에서 경로 설정

- 서버 : 서비스 제공하는 시스템

- 클라이언트 : 서비스 제공받는 시스템

 

 

 

 

 

다중화와 역다중화

- 다중화 multiplexing : 송신측에서 하나의 회선을 시간, 주파수, 코드로 나누어 많은 데이터를 싣는 것

- 역다중화 demultiplexing : 수신측에서 하나의 회선에 다중화되어온 데이터를 각 채널로 분리시키는것

다중화와 역다중화

 

 

캡슐화 encapsulation

- 송신측에서 데이터에 제어정보 추가

디캡슐화 decapsulation

- 수신측에서 데이터에 제어정보를 제거

 

 

 암호화

- 암호화 키를 이용해 평문을 암호문으로 만드는 것

복호화

- 복호화 키로 암호문을 평문으로 복구하는 것

 

 

 

 

 

대칭키

- 암호화 키와 복호화키가 같음

- 암호화키 = 복호화키. 간단. 암호/복호화 속도가 빠름. 키 관리 불편. 보안 취약

비대칭키

- 암호화 키와 복호화키가 별도로 존재

- 암호화키 != 복호화키. 복잡. 키 관리 용이. 암호/복호화 느림. 안전

 

 

 

 

 

데이터 전달 방식

1. 유니케스팅 unicasting

- 하나 수신자에게 전송

2. 멀티 캐스팅 multicasting

- 등록된 특정 다수 수신자에게 전송

3. 브로드캐스팅 broadcasting

- 불특정 다수 수신자에게 전송

 

 

 

 

데이터 전송 방식

- 동기식 전송  synchronous : 송수신간 타이밍 맞춰 전송

- 비동기식 전송 asynchronous : 송수신간 타이밍 맞추지 않고 전송

 

 

 

 

오류 제어 방식

- 오류 검출 : 패리티, CRC

- 오류 무시

- 오류 정정 ( 해밍코드)

- 재전송

 

패리티를 통한 오루 검출 예

- 짝수 패리티 even parity : 1의 개수가 짝수개여야 함. 홀수개라면 오류

- 홀수 패리티 odd parity : 1의 개수가 홀수여야 함. 짝수개라면 오류

패리티를 통한 오류 검출 예시

 

 

 

흐름제어 방법

- 송수신간 데이터 처리 속도 차이로 발생하는 문제 해결하기위한 방법

ex)

 a에서 100mbps로 보내는데 b에서는 10mbps속도로 받음 -> 90mbps 손실

-> a에서 10mbps만 보내도록 수정 => 흐름 제어

- x-on/off : 패킷 보내고 ack, 다음 보내기

- 슬라이드 윈도우 : 수신측 버퍼 여유를 송신측에 전달해서 전송

 

 

신호 전송 기술

1. 베이스벤드 baseband

- 신호 변조하지 않고 직접 전송. 근거리에서 사용. ex) LAN

- 100 base T(100mbps baseband twist cable 꼬임선 케이블)

- 100 base 5(100mbps baseband 500m 동축 케이블)

- 100 base Fx(100mbps baseband 광케이블)

베이스밴드 전송

 

2. 브로드밴드 broadband

- 신호를 변조하여 전송. 아날로그 신호로 변조. 넓은대역으로보냄.

- 실무에서는 베이스밴드를 주로 사용

브로드밴드 전송

 

 

 

 

신호 전송 방식

- 단방향 전송 : 송신측은 보내기만하고 수신측은 수신만 가능 ex) tv, 라디오

- 반이중방식 : 하나의 채널로 동시 송수신안되고, 한쪽에서 송신시 상대는 수신만 가능. ex) 무전기

- 전이중방식 : 채널이 2개로 동시 송수신 가능. ex) 일반 전화, 휴대폰

 

 

 

 

 

네트워크 기본 개념

1. 노드(장비), 링크(노드 연결)

2. 다중화(여러 신호를 하나의 회선으로)/역다중화(한 회선에서 여러 신호)

3. 캡슐화(제어,주소정보 추가)/디캡슐화(제어, 주소정보 꺼냄)

4. 암호화(평문->암호문), 복호화(암호화 -> 복호화) - 대칭키(암호키=복호화키), 비대칭키(암호키!=복호화키)

5. 동기식(송수신측 타이밍 맞춤)/비동기식(속수신 타이밍x맞춤)

 

 

 

네트워크 구성 요소

- 네트워크 장비 : 리피터, 허브, 스위치, 라우터, 게이트웨이

- 서버 장비 : 웹/메일/웹하드 서버, DNS/DHCP 서버, 그룹웨어 서버

- 보안 장비 : 방화벽, 보안서버

- 네트워크 케이블 : tp 케이블(꼬임선 케이블), 동축 케이블, 광케이블

 

네트워크 장비

- 허브 : 백본에서 100m연결시 호스트들이 대역폭을 나눠서 사용

- 스위치 : 백본에서 100m 연결시 호스트들이 같은 대역폭으로 사용

- 라우터 : 경로 설정, 흐름제어

- 게이트웨이 : 프로토콜이 다른 네트워크 연결. ex) 전화망-인터넷망 연결

 

 

인터넷 역사

69 : 국방부에서 알파넷 연결

73 : tcp/ip 프로토콜 개발

83 : tcp/ip가 알파넷 공식 프로토콜로 채택

86 : nsf-net : 미국 전역에 t1 백본 연결

90초 : isp를 통한 상용 인터넷 서비스 제공

 

 

300x250

'컴퓨터과학 > 통신, 보안' 카테고리의 다른 글

네트워크 - 3 TCP/IP 프로토콜  (0) 2020.05.18
네트워크 - 2 네트워크 구조  (0) 2020.05.17
데이터교환방식과 라우팅  (0) 2020.05.15
TCP/IP와 프로토콜  (0) 2020.05.15
네트워크 장비  (0) 2020.05.15
728x90

갱신 이상 update anomaly

- 데이터 중복으로 발생하는 문제

- 삽입 이상 : 불필요한 데이터를 삽입하지 않으면 데이터 삽입이 안되는 이상

- 수정 이상 : 중복데이터 중 일부만 수정되어 데이터 불일치 발생

- 삭제 이상 : 유용한 데이터도 같이 삭제되는 문제

 

교수 릴레이션 - 기본키 : 학번, 교과목 번호

 

- 학번에 학년 정보가 중복되어 있음

- 삽입 이상 : 600번 학생. 2학년 삽입 시 교과목 번호가 없으면 삽입 x

- 수정 이상 : C312 수강한 400번 학생 학년을 4 -> 3학년으로 변경시 나머지 데이터 학년과 불일치

- 삭제 이상 : 200번 학생 삭제시 3학년 정보도 사라짐

->속성간 종속성 고려가 불충분해서 발생

=> 릴레이션 분해해서 하나의 종속관계를 하나의 릴레이션으로 표현해야함 => 릴레이션 정규화

 

 

함수적 종속 functional dependency : fd

- 정규화 핵심 개념으로 릴레이션의 갱신 이상을 발견하는 방법.

- 속성 간 관계에 대한 제약조건에 해당

- 속성 y는 속성 x에 함수적으로 종속 : x -> y

 

사원 릴레이션의 함수적 종속 관계 표현

1. 사원번호 -> 사원 이름, 주소, 전화번호 : 사원번호를 알면 이름, 주소, 전화번호알수있음

2. 부서번호 -> 부서이름 : 부서번호를 알면 부서이름 알수있음

3. 부서이름 -> 부서번호 :부서이름을 알면 부서번호알수있음

4. {사원번호, 부서번호} -> 직책 : 사원번호, 부서번호를 알아야 직책을 알수있음

5. x : 사원이름이나 부서번호, 주소등을 알아도 나머지 속성을 알수없음. 함수적으로 결정 x

 

함수적 종속 다이어그램 function dependency diagram fdd

- 함수적 종속 관계를 그림으로 표현

 

사원 릴레이션 함수적 종속 다이어그램

 

 

 

완전 함수적 종속 full functional dependency

- 복합속성 x -> y가 성립시

- 복합속성 {a,b}가 c의 결정자로 a나 b만으로 c를 결정 불가

완전 함수적 종속

부분 함수적 종속

- 복합 속성 x->y 성립시

- 복합 속성 {a, b} 중 b만으로 c를 결정

부분 함수적 종속

 

 

사원 릴레이션 함수적 종속 정리

함수적 종속 1. {사원번호, 부서번호} -> (직책, 사원이름, 주소, 전화번호, 부서이름) 성립

부분 함수적 종속 1.  {부서번호} -> (사원이름, 주소, 전화번호)

부분 함수적 종속 2  {사원번호} -> (부서이름)

완전 함수적 종속 1. {사원번호, 부서번호} -> (직책)

 

 

 

이행적 함수적 종속 transitive functional dependency

- 한 릴레이션 속성 a, b, c가 있을때 다음 필요충분조건 만족하는경우. 속성 c가 속성 a에 이행적 함수적종속

속성 c는 a에 이행적 함수적 종속

 

 

학생 릴레이션 예시

- 학생(학번, 교과목번호, 성적, 학과 이름, 학과 전화번호)

함수족 종속 

- 완전 함수적 종속 : {학번, 교과목 번호} -> 성적

- 부분 함수적 종속 : 학번 ->(학과이름, 학과전화번호)

- 완전 함수적 종속 : 학과이름->학과전화번호

학생 릴레이션 함수적 종속 다이어그램

학번 -> 학과명, 학과명-> 학과 전화번호

=> 학과 전화번호는 학번에 이행적 함수적 종속관계

 

 

정규화 normalization

- 데이터 중복을 제거하여 갱신 이상 제거. 논리적 데이터 모델 단순화 

* 많은 조인이 발생하여 질의 응답시간이 느려질수있음

 

정규형 normal form

- 데이터 중속 감소와 응답시간 단축하기위한 제약 조건을 만족하는 형태 

- 제약조건에 따라 제1 정규형 ~ 제 5정규형.

- 정규화 정도가 낮을수록 하나의 릴레이션에 많은 정보 포함

 

 

정규형 단계

1. 제 1정규형 1NF : 모든 속성 도메인이 원자값 -> 중복 속성 분리

2. 제 2정규형 2NF : 모든 속성이 기본키에 완전 함수적 종속 -> 기본키에 부분 함수적 종속 속성 분리

3. 제 3정규형 3NF : 이행적 함수적 종속 없어야함 -> 이행적 함수적 종속 속성 분리

4. 보이스/코드 정규형 BCNF

* 보통 제3정규형이나 보이스/코드 정규형까지 정규화 수행

 

3NF, BCNF가 최적인 이유

- 1NF, 2NF : 불필요한 데이터 중복, 공간 낭비

- 4NF, 5NF : 너무많은 릴레이션. 복잡한 종속성

 

 

정규화 단계

0. 비정규 릴레이션

1. 1NF <- 원자 값이 아닌 도메인 분해

2. 2NF <- 부분 함수적 종속 제거

3. 3NF <- 이행적 함수적 종속 제거

4. BCNF <- 결정자가 후보키가 아닌 함수적 종속 제거

5. 4NF <- 다치 종속성 제거

6. 5NF <- 조인 종속성 제거

 

 

- 비정규 릴레이션 예시 : 동아리가 다중치 속성

학생1 릴레이션 - 비정규 릴레이션

 

(1) 제1 정규형

- 릴레이션 속성은 원자값만 가져야함. 학생 2 새 릴레이션 생성(기본키 : {학번, 동아리})

학생2 릴레이션 - 제 1정규형, 1NF

 

- 그러나 학번, 이름, 학과가 중복된 데이터 발생 -> 2개의 새 릴레이션(제 1 정규형 만듬)

- 학생 3 릴레이션(1NF) : 학번 -> (이름, 학과)

- 학생 4 릴레이션(1NF) : {학번, 동아리}

학생 3 릴레이션 - 제1정규형, 1NF
학생 4 릴레이션 - 제1 정규형, 1NF

 

(2) 제 2정규형

- 제1 정규형은 기본키에 부분적 함수적 종속으로 갱신 이상 발생

-> 릴레이션을 분해하여 부분적 함수적 종속 제거하여 제 2정규형 만듬

 

수강지도 릴레이션 분해

- 수강지도(학번, 교과목번호, 지도교수, 학과, 성적)

- 기본키 : {학번, 교과목번호}

- 함수적 종속

 학번 -> (지도교수, 학과)

 {학번, 교과목번호} -> 성적

 지도교수 -> 학과

수강지도 릴레이션 1NF

 

수강 릴레이션 2NF, 지도 릴레이션 2NF

- 학번 -> (지도교수, 학과)로 부분적 함수적 종속 발생

=> 수강 릴레이션과 지도 릴레이션으로 분해

지도(학번, 지도교수, 학과)

수강(학번, 교과목 번호, 성적)

지도 릴레이션 2NF

 

수강 릴레이션 2NF

 

 

(2) 제 3 정규형

- 제 2정규형은 이행적 함수적 종속관계가 존재시 갱신 이상 발생

-> 이행적함수적 종속 제거하여 제3정규형 만듬

 

 

지도 릴레이션 2NF

- 지도(학번, 지도교수, 학과)

- 기본키 : 학번

학번 ->(지도교수, 학과)

지도교수 -> 학과

=> 학과는 학번에 이행적 종속관계

지도 릴레이션 2NF

 

 

지도 릴레이션 분해 3NF

- 지도릴레이션을 학생지도와 교수소속 3NF 릴레이션으로 분해

학생지도(학번, 지도교수)

교수소속(지도교수, 학과)

학생지도 3NF
교수소속 3NF

 

보이스 코드 정규형 BCNF

- 제3 정규형은 후보키가 아닌 결정자가 존재시 갱신 이상 발생

-> 모든 결정자가 후보키가되는 BCNF 만듬

 

수강과목 3NF 릴레이션

- 수강과목 : (학번, 교과목, 교수)

- 기본키 : {학번, 교과목}

- 후보키 : {학번, 교과목}, {학번, 교수}

{학번, 교과목} -> 교수

교수 -> 교과목

-> 교수 속성이 후보키가 아닌데도 결정자 역활 수행

수강과목 3NF 릴레이션

 

수강과목 3NF 릴레이션 분해

- 교수과목(교수, 교과목) BCNF 릴레이션

- 수강교수(학번, 교수(FK)) BCNF 릴레이션

교수과목 BCNF

 

수강교수 BCNF

 

역정규화 denormalization

- 성능 개선을위해 데이터 중복과 갱신 이상이 생기더라도 낮은 정규형으로 되돌아감

 

300x250
728x90

테이블과 릴레이션 차이

- 테이블 : 릴레이션 표현하는 구채적인 방법

- 릴레이션 : 추상적인 개념 중복 허용 x

 

 

논리적 설계

- 개념적 데이터 모델을 DBMS가 지원하는 논리적 데이터 모델(릴레이션=릴레이션 인스턴스 + 릴레이션 스키마) 설계

- 논리적 모델링 : 개념적 스키마를 논리적 스키마(릴레이션 스키마)로 변환, 정규화 수행, 무결성 제약조건 정의

- 트랜젝션 인터페이스 설계 : 트랜젝션 모델링을 기초로 인터페이스 설계

 

릴레이션 스키마

- 관계 데이터 모델의 기본이 되는 릴레이션을 구성하는 속성들의 집합

- 릴레이션 이름과 속성들로 표현

1. erd 개체와 관계를 릴레이션 스키마로 변경 ->  릴레이션명(속성1, 속성2)

2. 기본키에 밑줄 표기

3. 스키마 단순화 - 1:1, 1:n 관계 유형 단순화

4. 정규화로 적합한 릴레이션 형태로 변환

개체 관계 모델을 릴레이션 스키마로 변환

 

튜플 tuple : 관계 데이터 모델의 한 행으로 개념 데이터 모델의 엔티티에 대응

속성 attribute : 관계 데이터 모델 의 열

도메인 domain : 속성이 가질수 있는 값의 영역

카디널리티 cardinality : 릴레이션이 가지는 튜플의 갯수

차수 degree : 릴레이션이 가지는 속성의 개수

릴레이션 인스턴스 relation instance : 튜플들의 집합

릴레이션 스키마 relation schema : 속성들의 집합

릴레이션 relation : 릴레이션 인스턴스 + 스키마

키 key : 유일하게 식별할수 있는 속성이나 속성 집합

후보키 : 유일성, 최소성 만족하는 속성 집합

슈퍼키 : 유일성만 만족하는 속성 집합

대체키 : 기본키가 아닌 후보키들

기본키 : 후보키중 가장 적합한 키, not null, unique

외래키 : 타 릴레이션의 기본 키를 참조하는 키

 

무결성 제약 조건 integrity constraints

- 정확성과 일관성 유지를 위해 db가 만족해야하는 조건

1. 개체 무결성 :기본키는 구분가능한 유일한 값으로, null값을 가져선 안됨

2. 참조 무결성 : 외래키는 null이나 기본키값을 가져야함

3. 도메인 무결성 : 미리 정해진 도메인 값을 가져야함

- 기본키와 외래키는 개체 무결성과 참조 무결성은 묵시적으로 정의됨

- not null, unique, check 는 논리적 모델링 단계에서 명시적으로 정의

300x250

+ Recent posts