An architecture is the abstract design concept of an application, where as a framework is a pre-built general or special purpose architecture that's designed to be extended.
Model in computer science is the result of a process of representing a real-world object or phenomenon as a set of logical, mathematical and computational concepts and equations. Contemporary scientific practice employs at least three major categories of models: concrete models, mathematical models, and computational models. Simulation of a system is the operation of a model in terms of time or space, which helps analyze the performance of an existing or a proposed system.
Architecture in computer science is logical/functional/structural arrangement as well as a set of rules and methods that describe the functionality, organization, and implementation of an architected system. Some definitions of architecture define it as describing the capabilities and programming model of a computer but not a particular implementation. In a pragmatic view, it is the conceptual structure around which a given system is designed.
Framework in computer science is an abstraction in which a system providing generic functionality can be selectively changed by additional, purposely developed constituents, thus providing application-specific features and services. In a pragmatic view, a framework (a software, a system, or an environment) is a platform for developing specific applications.
Protocol in computer science is a standardized set of rules (of types, commands, constraints, acknowledgement) for preparation, processing, and communicating something (e.g. data, instruction, etc.). Protocols enable computers to be networked with one another and transfer (like OSI). Protocols are typically constructed by following reductionist principles.