본문 바로가기

전체 글227

[데이터 통신과 네트워킹] SCTP란? 스트림 제어 전송 프로토콜(SCTP) 멀티미디어 통신을 위해 조금 더 좋은 프로토콜을 만들기 위해 UDP와 TCP의 일부 장점을 결합하여 설계된 새로운 전송층 프로토콜이다. ◆ SCTP 서비스 1. 프로세스-대-프로세스 통신 SCTP는 UDP 혹은 TCP와 마찬가지로 프로세스-대-프로세스 통신을 제공 2. 다중 스트림 SCTP는 SCTP 용어로 결합(association)이라고 하는 다중 스트림 서비스(multistream service)를 각 연결에 허용 만약 스트림 가운데 하나가 막혀있어도 다른 스트림은 여전히 데이터를 전달 가능 다중 스트림 서비스: Association이라 부르며, 스트림 중 1개가 블로킹되더라도 다른 스트림들이 데이터를 전송할 수 있는 서비스를 의미 3. 멀티홈잉 SCTP 결합은.. 2022. 10. 10.
[데이터 통신과 네트워킹] TCP 혼잡 제어 ◆ TCP 혼잡 제어 TCP는 네트워크에서 혼바 제어를 위해 서로 다른 정책을 사용 혼잡 창 - TCP의 많은 세그먼트 손실은 세그먼트의 재전송의 증가를 의미하고, 혼잡을 악화시켜 결국 통신에 충돌을 초래 - TCP는 IP 서비스를 사용하는 종단간(end-to-end) 프로토콜이며, 라우터에서의 혼잡은 IP 영역에 속해 있으며 IP에 의해 처리되어야 함 - 그러나 IP는 단순한 프로토콜이며, 혼잡 제어를 제공하지 않으므로, TCP 스스로 문제에 대한 책임을 져야 함 - TCP는 네트워크에서 혼잡을 무시할 수 없으며, 적극적으로 네트워크에 세그먼트를 보낼 수 없음. 왜냐하면 공격적인 결과는 TCP 스스로 좋지 않은 상황에 빠질 수 있음 - TCP는 네트워크에서 사용 가능한 대역폭을 활용할 수 없기 때문에 .. 2022. 10. 7.
[S/W] S/W의 생명 주기(Life-Cycle) S/W의 Life-Cycle S/W Life-Cycle이란? S/W의 분석 > 설계 > 구현 > Test > 운용/유지보수 > 폐기까지의 전 구간을 말한다. 여기서 유지보수 단계에는 다시 작고 많은 Life-Cycle들이 포함된다. 다음에는 대표적인 세개의 모델들을 소개 1. Waterfall(폭포수) Model - 1970년 Royce가 개발 - 가장 오래 된 모델로 S/W 개발 단계를 연속적인 과정으로 표현함 - 하위 단계로 갈 수록 구체화 됨 - 각 단계에서 문제 발견 시, 상위 레벨로 Feedback 가능 장점 1. S/W 개발 과정의 자연스러운 표현 2. 단계별 작업의 생략이 없음 3. 실지로 일반 S/W 개발엔 잘 적용됨 단점 1. 개발 초기에 완벽한 요구사항, 분석 요청으로 인한 더딘 진행 .. 2022. 10. 5.
[IoT] 사물인터넷의 역사 사물인터넷(IoT)의 역사 사물인터넷이라는 용어가 처음 사용된 것은 1999년이다. 그렇다고 해서 사물인터넷의 역사가 1999년부터 시작되었다는 것은 아니다. 굳이 특정해서 말하자면 전화나 컴퓨터가 아닌 장치들이 네트워크에 연결되기 시작한 시점부터라고 말할 수 있을 것이다. 산업기술에 의해 개발된 장치들이 최초로 연결된 것은 1847년 이탈리아의 안토니오 무치가 개발한 기계식 전화기인 '텔레트로포노'다. 물론 최초의 전기식 전화기를 개발(1860년)한 것도 안토니오 무치이다. (벨은 전기식 전화기에 대한 특허를 1876년에 최초로 등록한 사람이다.) 사물인터넷의 개념이 최초로 적용된 것은 미국 카네기멜론 대학교의 콜라 자판기이다. 1982년 카네기멜론 대학교 컴퓨터 과학과의 대학원생들이 실험실 책상에서 .. 2022. 10. 3.
[데이터 통신과 네트워킹] Chapter 9 전송층 기본 연습문제 풀이 1. 전송층의 주요 임무 중의 하나는 _______ 통신이다. 답: 3번(프로세스-대-프로세스) 2. 일반적으로 클라이언트 프로그램은 _______ 포트 번호를 이용한다. 일반적으로 서버 프로그램은 _______ 포트 번호를 이용한다. 답: 2번(임시, 잘 알려진) 3. 소켓 주소는 _______ 이 결합된 것이다. 답: 4번(정답 없음) 4. _______는 하나 이상의 발신지로부터 정보를 수신하는 것을 의미한다. _______는 하나 이상의 발신지로 정보를 전달하는 것을 의미한다. 답: 2번(다중화, 역다중화) 5. _______는 생산자가 생산한 정보를 전달하는 것을 의미한다. _______는 소비자가 받을 준비가 된 경우에 정보를 수신하는 것이다. 답: 1번(끌기, 밀기) 6. 정지-후-대기 프로.. 2022. 9. 30.
[데이터 통신과 네트워킹] TCP 창, 흐름 제어, 오류 제어 ◆ TCP의 창 TCP에서 사용되는 창(WIndow) - TCP는 데이터 전송을 위한 각 방향에 대해서 2개의 창(송신 창, 수신 창)를 사용하며 따라서 양방향 통신을 위하여 4개의 창이 필요 - 하지만 간단한 설명을 위해 통신이 단방향(클라이언트로부터 서버로)으로 이루어지는 상황을 고려 - 양방향 통신은 2개의 단방향 통신과 피기배깅(piggybacking)을 이용하면 유추 가능 - 여기에서 사용되는 창 크기는 100바이트이지만 뒷부분에서 송신 창 크기는 수신자(흐름 제어)와 하부 네트워크의 혼잡(혼잡 제어)에 의하여 조절됨 - 그림에서는 어떻게 송신 창이 열리고(open), 닫히고(close), 축소(shrink)되는지 보여줌 - 청색은 송신했으나 아직 ACK를 못 받은 상태, 흰색은 송신 대기중 상.. 2022. 9. 27.
[데이터 통신과 네트워킹] TCP 서비스와 특징, 세그먼트, TCP 연결 ◆ 전송 제어 프로토콜(Transmission control protocol:TCP) TCP: 연결형, 신뢰성 있는 프로토콜 - TCP는 연결형 서비스를 제공하기 위하여 연결 설정, 데이터 전송, 연결 해제 단계를 명확하게 정의 - TCP는 신뢰성을 제공하기 위해 N복귀 프로토콜(GBN, Go-Back-N)과 선택적 반복 프로토콜(SR,Selective-Repeat)의 결합을 사용 - 이 목적을 달성하기 위해, TCP는 검사합(오류 검출을 위해), 분실 혹은 훼손된 패킷의 재전송, 누적 및 선택 확인응답, 그리고 타이머를 사용 - TCP는 인터넷에서 가장 많이 사용되는 전송층 프로토콜 ◆ TCP 서비스 1. 프로세스-대-프로세스 통신 - TCP는 UDP처럼 포트 번호를 사용하여 프로세스 간 통신을 제공 .. 2022. 9. 26.
[Database] 참여 제약 조건과 키(Key) 참여 제약 조건 참여 제약 조건은 두 가지 유형으로 나눌 수 있다. 1) 전부 참가(Total participation) 2) 부분 참가(Partial participation) 전부 참가 - Entity 집합 E 내의 모든 Entity가 관계집합 R 내에 하나 이상의 관계에 참여하는 경우 - 관계 표현을 두 줄로 실선으로 표기 부분 참가 - Entity 집합 E 내의 일부 Entity가 관계집합 R 내에 참여하지 않는 경우 - 관계 표현을 단일 실선으로 표기 키(Key) 특정 Entity 집합이나 관계 집합 안에서 어느 하나의 Entity나 관계를 식별하게 하는 Attribute의 집합 key의 종류 1) 슈퍼키(Super Key) 2) 후보키(Candidate Key) 3) 기본키(Primary Ke.. 2022. 9. 25.
[데이터 통신과 네트워킹] 사용자 데이터그램 프로토콜(UDP) 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 비연결형이고, 신뢰성이 없는 전송 프로토콜 UDP 1. UDP는 호스트 간 통신 대신에 프로세스 간 통신을 제공하는 것을 제외하고는 IP 서비스에 어떠한 것도 추가하지 않는다. 2. UDP는 최소한의 오버헤드를 가진 매우 간단한 프로토콜이다. - 만약 프로세스가 작은 메세지를 송신하기를 원하고, 신뢰성에 관하여 그다지 신경을 쓰지 않는다면 UDP를 사용 - UDP를 사용하여 작은 메세지를 송신하는 것은 TCP보다 송신자와 수신자 사이에 상호작용이 훨씬 적음 사용자 데이터그램 사용자 데이터그램이라고 부르는 UDP 패킷은 각각 2바이트인 4개의 필드로 만들어진 고정된 크기의 8바이트 헤더를 보유하고 있다. - 처음 두 필드는 발신.. 2022. 9. 23.