전체 글 280

TCP

TCP 서비스프로세스-대-프로세스 통신End-to-End포트 번호를 이용한 프로세스간 통신 제공 스트림 배달 서비스스트림 기반 프로토콜두 개의 프로세스가 가상의 튜브로 연결바이트 스트림 형태로 데이터 송수신송신 버퍼와 수신 버퍼: 송수신이 동일한 속도로 이루어지지 않을 때 필요세그먼트(segment): 일련의 바이트를 패킷으로 그룹화 -> IP 계층에 전달 전이중 통신양방향 전송송신 데이터와 수신 데이터에 대한 확인 응답을 함께 보내는 piggybacking송신측은 다중화, 수신측은 역다중화 수행다중화와 역다중화송신측은 다중화, 수신측은 역다중화 수행연결형 서비스TCP는 연결지향 프로토콜물리적 연결이 아닌 가상의 연결요청 -> 승인 -> 데이터 교환 -> 해제 순신뢰성 서비스확인응답 메커니즘 이용TCP ..

데이터 거버넌스와 데이터과학의 미래

1. 대한민국 데이터 정책 거버넌스데이터 거버넌스데이터 거버넌스데이터의 생성, 변경, 처리 등에 관하여 정의된 표준데이터 거버넌스르 통해 조직 내에 존재하는 데이터의 품질을 제고하고 데이터와 관련한 보안을 강화할 수 있음데이터 정책 거버넌스데이터 정책을 담당하는 주요 부처 및 부서의 기능을 조정하여 데이터 정책의 목표를 달성해나가는 추진 체계를 일컫는 말넓은 의미에서는 관련 법률과 종합계획까지 포괄 공공데이터의 컨트롤 타워행정안전부 디지털정부혁신실디지털정부정책국정부혁신국공공데이터국공공서비스국공공데이터정책과공공데이터관리과통합데이터분석센터디지털정부혁신실 주요 업무온라인 기반의 효율적인 디지털 정부 구현 및 디지털 정부 국제 협력 확대국민의 삶과 밀접히 연관되어 있는 공공데이터의 개방과 이용 활성화모바일 전자..

UDP

사용자 데이터 그램 형식8바이트 고정 크기 헤더발신지 포트 번호목적지 포트 번호길이: 헤더와 데이터를 합한 전체 길이검사합: 오류 탐지 UDP 서비스프로세스 대 프로세스 통신(종단간 통신): IP 주소와 포트번호로 구성된 소켓 이용비연결형 서비스: 각 사용자 데이터그램은 독립적흐름 제어: X오류 제어: 검사합만 존재혼잡 제어: X -> 실시간 트래픽을 전송비연결형 서비스: 각 사용자 데이터그램은 독립적흐름 제어: X오류 제어: 검사합만 존재혼잡 제어: X -> 실시간 트래픽을 전송큐잉(Queueing): 프로세스가 시작될 때 포트번호를 요청. 입/출력 큐 생성. 프로세스 종료 시 큐 제거다중화와 역다중화: 송신측 - 다대일 관계, 다중화. 수신측 - 일대다 관계, 역다중화 UDP가 적합한 서비스: DNS..

DNS

도메인 이름 시스템(DNS, Domain Name Service)DNS의 필요성도메인 이름과 IP주소를 매핑컴퓨터는 통신할 때 숫자인 IP 주소를 처리사람들은 IP 주소보다 사용하기 편리한 이름을 사용함DNS 변환 과정사용자는 호스트 이름을 파일 전송 클라이언트에게 전달파일 전송 클라이언트는 호스트 이름을 DNS 클라이언트에 전달부팅 시 알게된 DNS 서버의 IP주소를 이용하여 파일 서버의 도메인 이름을 조회(query)DNS 서버는 파일 서버의 IP 주소를 응답DNS 클라이언트는 IP 주소를 파일 전송 클라이언트에게 전달파일 전송 클라이언트는 수신한 IP 주소로 파일 서버에 접속이름 공간계층적 이름 공간을 가지기 위해 도메인 이름 공간을 만들어야 함트리는 0에서 127까지의 128개 레이블(label)..

ICMP

인터넷 제어 메시지 프로토콜(ICMP)IP 프로토콜의 문제점신뢰성이 없고 비연결형 데이터그램 전달오류 제어(오류 보고 및 오류 수정) 기능이 없음호스트와 관리 질의를 위한 메커니즘이 없음네트워크 관리자는 다른 호스트나 라우터로부터 정보를 획득할 필요가 있음2가지 유형의 메시지오류-보고(error-reporting) 메시지: 라우터나 목적지 호스트가 IP 패킷을 처리하는 도중 발견하는 문제 보고질의(query) 메시지: 호스트나 네트워크 관리자가 라우터나 다른 호스트로부터 특정 정보 획득 시 사용 (ping 등)ICMP 메시지 형식오류 보고 메시지오류 수정이 아닌 보고만 함오류 수정은 상위 계층 프로토콜(TCP)에 맡김오류 메시지는 언제나 최초의 발신지로 전송ICMP 오류 메시지 중요한 사항오류 메시지를 ..

IP 스푸핑

IP 스푸핑(spoofing)해커가 자신의 IP주소를 악용하고자 하는 호스트의 IP 주소로 변조ACL 통제를 회피할 수 있는 공격 방법ACL(Access Control List)접근 통제 방법. 네트워크 방화벽을 통한 트래픽 필터링 방법.라우터를 통과하는 패킷을 필터링하는 목록으로 네트워크에 대한 접근을 허용 또는 거부하는 기능변조된 IP를 사용하기 때문에 추적이 어려움TCP/IP 구조적 결함을 이용한 공격 방법 - 인증 방법의 부재공격자를 신뢰 관계에 있는 호스트(관리자)인 것처럼 속임신뢰 관계: 특정 시스템의 IP와 신뢰 관계를 맺고(서버에 등록) 로그인 없이 접속을 허락하는 것 공격방법서버와 클라이언트 B(관리자)는 신뢰 관계를 맺고 있음(ACL)클라이언트 A(공격자)가 서버에 접근하고자 함(3-w..

연관규칙 생성과 연관분석의 실제

1. 지표를 이용한 연관규칙의 분석연관분석의 지표Support(지지도): 이걸 본 사람이 얼마나 많을까?support(A): A가 등장하는 트랜잭션의 비율support(A -> B): A와 B가 모두 등장하는 트랜잭션의 비율Confidence(신뢰도): 이걸 본 사람은 저것도 봤을까?confidence(A -> B): A가 등장하는 트랜잭션 중, B까지 등장하는 비율confidence(A -> B) = support(A->B) / support(A)높은 confidence를 갖는 연관규칙을 반드시 유의미하다고 볼 수 있나?lift(향상도)lift(A -> B) = confidence(A -> B) / support(B)support(B)가 높아 confidence(A -> B) 값이 높아지는 것을 방지l..

군집화 알고리즘과 군집에 대한 평가

1. K-평균 군집화와 퍼지 군집화K-Means Clustering사전에 군집의 개수 K를 결정각 군집에는 중심이 존재하게 되는데, 중심과 군집 내 데이터 거리 차의 제곱 합을 최소로 하는 최적 군집을 찾음일단 중심 K개를 찍고 반복Python에서의 K-평균 군집화# 알고리즘 수행을 위해 필요한 라이브러리import matplotlib.pyplot as pltimport pandas as pdfrom sklearn.cluster import KMeansplt.figure(figsize = (10, 5))# K-means Clustering의 실제df = pd.read_csv('menu.csv', engine = 'python')df_data = df[['가격', '판매량']] # 군집화하기 위해 사용할 ..

알람 기능 구현 방법

이번 학기 캡스톤으로 공유형 가계부 웹 서비스를 구현하는 프로젝트를 진행하고 있다.가계부에 초대받았을 경우, 포인트를 받았을 경우, 댓글이 달렸을 경우 등 서비스 이용자에게 알람을 줄 필요성이 생겨 알람 기능을 구현하고자 한다.그 전에 알람 기능을 구현하는 방법에는 어떤 방법이 있고 어떤 장단점이 있는지 알아보았다. HTTP 통신에서는 클라이언트의 요청이 있을 경우에 서버가 응답을 하는 방식이고 비연결성이라는 특징을 가지고 있기 때문에 서버에서 실시간으로 클라이언트에 변경사항을 알리기 어렵다.이에 대한 해결책, 즉 서버의 Event를 클라이언트로 보내는 방법으로 Polling, Long polling, Web socket, SSE 등이 있다.Polling일정 주기를 가지고 서버에 요청을 보내는 방식HTT..

Spring & JPA 2024.05.05

여러 가지 방법을 이용한 분류

1. k-최근접 이웃에 기반한 분류k-Nearest Neighbor(k-최근접 이웃, k-NN)가장 가까운 이웃 k개를 바탕으로 분류를 수행하는 방법데이터가 주어질 때마다 연산을 통한 분류가 이루어지므로, 엄밀하게는 학습이라고 하기 어려움 Python에서의 k-NN# 필수 라이브러리 불러오기import pandas as pdfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import confusion_matrix# 지뢰와 보물 데이터 불러오기df = pd.read_csv('treasure.csv')# 주어진 데이터에서 입력 변수와 예측..