b'\n_START_ARTICLE_\nDNP3\n_START_PARAGRAPH_\nDNP3 (acr\xc3\xb3nimo del ingl\xc3\xa9s Distributed Network Protocol, en su versi\xc3\xb3n 3) es un protocolo industrial para comunicaciones entre equipos inteligentes (IED) y estaciones controladores, componentes de sistemas SCADA. Es un protocolo ampliamente utilizado en el sector el\xc3\xa9ctrico, de gran difusi\xc3\xb3n en Estados Unidos y Canad\xc3\xa1, y menor presencia en Europa donde el uso de alternativas como IEC-60870 101 e IEC-60870 104 gozan de mayor popularidad. Tambi\xc3\xa9n se puede encontrar en otros campos (agua, gas, entre otros tipos de empresas de servicio).\n_START_SECTION_\nSeguridad\n_START_PARAGRAPH_\nAunque el protocolo fue desarrollado sobre la base de requisitos de gran fiabilidad, no se prest\xc3\xb3 demasiada importancia a los aspectos de seguridad relacionada con los ataques de Hackers u otros factores malintencionados que pudiesen interferir en el correcto comportamiento de las comunicaciones entre los diversos sistemas de control. Esto supuso un importante error de dise\xc3\xb1o._NEWLINE_Debido a que el protocolo puede utilizar los niveles de transporte y enlace proporcionados por la suite TCP/IP, gran parte del problema de a\xc3\xb1adir un Sistema de Autenticaci\xc3\xb3n Seguro quedaba resuelto._NEWLINE_DNP3 es actualmente compatible con las especificaciones de seguridad IEC 62351-5._NEWLINE_Cabe destacar adem\xc3\xa1s que el protocolo DNP3 se menciona en el est\xc3\xa1ndar IEEE 1379-2000, el cual recomienda un conjunto de pr\xc3\xa1cticas recomendables para la implementaci\xc3\xb3n de enlaces de comunicaci\xc3\xb3n entre maestros SCADA - RTU/IED. Este est\xc3\xa1ndar no s\xc3\xb3lo incluye cifrado, sino toda una serie de pr\xc3\xa1cticas que mejoran la seguridad frente a m\xc3\xa9todos intrusivos conocidos.\n_START_SECTION_\nNivel de transporte\n_START_PARAGRAPH_\nEl nivel de transporte es el encargado de permitir mensajes \xc3\xbanicos estructurados tanto en m\xc3\xbaltiples tramas como en m\xc3\xbaltiples fragmentos. Esta es una de las caracter\xc3\xadsticas diferenciadoras de DNP3 frente a otros protocolos de comunicaci\xc3\xb3n industriales del mismo \xc3\xa1mbito, tales como IEC 60870, y permite el concepto de mensajes de tama\xc3\xb1o ilimitado._NEWLINE_A continuaci\xc3\xb3n se describir\xc3\xa1 el funcionamiento de este nivel, dependiendo del sentido del flujo de los datos dentro de la estructura de capas del protocolo.\n_START_SECTION_\nDatos transmitidos desde el nivel de aplicaci\xc3\xb3n hacia el nivel de enlace\n_START_PARAGRAPH_\nEl nivel de aplicaci\xc3\xb3n pasa los fragmentos al nivel de transporte, y este se encarga de trocearlos y agregarles al principio la cabecera de transporte, la cual ocupa un byte y contiene el n\xc3\xbamero de secuencia que identifica el segmento dentro del fragmento. El tama\xc3\xb1o de los fragmentos ha de ser tal, que una vez agregadas las cabeceras del nivel de enlace (diez bytes) y los correspondientes CRCs, el tama\xc3\xb1o total no exceda los 292 bytes m\xc3\xa1ximos permitidos para una trama.\n_START_SECTION_\nDatos transmitidos desde el nivel de enlace hacia el nivel de aplicaci\xc3\xb3n\n_START_PARAGRAPH_\nEn este caso, el nivel de transporte se encarga de recomponer los fragmentos del nivel de aplicaci\xc3\xb3n a partir de las tramas que le proporciona el nivel de enlace. Para ello, recurre a las cabeceras de transporte y al n\xc3\xbamero de secuencia que identifica la posici\xc3\xb3n de cada segmento dentro del fragmento.\n_START_SECTION_\nNivel de aplicaci\xc3\xb3n\n_START_PARAGRAPH_\nEl nivel de aplicaci\xc3\xb3n se encarga de procesar los fragmentos que le pasa el nivel de transporte, y obtener la informaci\xc3\xb3n de control y monitorizaci\xc3\xb3n en ellos encapsulados atendiendo al modelo de datos._NEWLINE_Entre los servicios que proporciona este nivel, se encuentran la escritura y lectura de valores, la congelaci\xc3\xb3n de contadores y la selecci\xc3\xb3n y ejecuci\xc3\xb3n de mandos. El c\xc3\xb3digo de funci\xc3\xb3n es el que permite indicar qu\xc3\xa9 operaci\xc3\xb3n debe realizarse en este nivel._NEWLINE_Por otro lado, las estaciones controladas disponen de la posibilidad de informar a la estaci\xc3\xb3n controladora de diferentes aspectos relacionados con este nivel gracias a dos bytes denominados indicaciones internal (Internal Indications, IIN). La estaci\xc3\xb3n controlada puede servirse de estas indicaciones para informar acerca de la presencia de eventos de clase 1, clase 2 o clase 3, de la necesidad de ser sincronizada o de la presencia de anomal\xc3\xadas en la configuraci\xc3\xb3n o en la base de datos._NEWLINE_El modelo de datos en DNP3 est\xc3\xa1 basado en un esquema de objetos.'